首页 > 解决方案 > 索引 38 处的非法字符 <:>:\\install.domain.com\updates$\Oracle;C:\Oracle11g\product\11.2.0\client_1\network\admin\ojdbc.properties

问题描述

如何解决 Illegal char <:> at index 38: \install.domain.com\updates$\Oracle;C:\Oracle11g\product\11.2.0\client_1\network\admin\ojdbc.properties 在 Oracle SQL 开发人员中连接错误

连接凭据

异常堆栈跟踪:

java.nio.file.InvalidPathException: Illegal char <:> at index 38: \\install.onsemi.com\updates$\Oracle;C:\Oracle11g\product\11.2.0\client_1\network\admin\ojdbc.properties
    at sun.nio.fs.WindowsPathParser.normalize(WindowsPathParser.java:182)
    at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:153)
    at sun.nio.fs.WindowsPathParser.parse(WindowsPathParser.java:77)
    at sun.nio.fs.WindowsPath.parse(WindowsPath.java:94)
    at sun.nio.fs.WindowsFileSystem.getPath(WindowsFileSystem.java:255)
    at java.nio.file.Paths.get(Paths.java:84)
    at oracle.jdbc.driver.PropertiesFileUtil.validatePath(PropertiesFileUtil.java:442)
    at oracle.jdbc.driver.PropertiesFileUtil.loadDefaultFiles(PropertiesFileUtil.java:204)
    at oracle.jdbc.driver.PropertiesFileUtil.loadPropertiesFromFile(PropertiesFileUtil.java:137)
    at oracle.jdbc.driver.PhysicalConnection.getConnectionPropertiesFromFile(PhysicalConnection.java:9880)
    at oracle.jdbc.driver.PhysicalConnection.readConnectionProperties(PhysicalConnection.java:1042)
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:739)
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:447)
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:38)
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:704)
    at oracle.jdeveloper.db.adapter.AbstractConnectionCreator.getConnection(AbstractConnectionCreator.java:222)
    at oracle.dbtools.raptor.standalone.connection.RaptorConnectionCreator.getConnectionImpl(RaptorConnectionCreator.java:399)
    at oracle.dbtools.raptor.standalone.connection.RaptorConnectionCreator.getConnection(RaptorConnectionCreator.java:118)
    at oracle.dbtools.raptor.dialogs.conn.ConnectionPrompt.promptForPassword(ConnectionPrompt.java:67)
    at oracle.jdevimpl.db.adapter.DatabaseProviderHelper$PasswordPrompter.promptForPassword(DatabaseProviderHelper.java:422)
    at oracle.jdevimpl.db.DBConnAddin$2.promptForPassword(DBConnAddin.java:89)
    at oracle.jdeveloper.db.adapter.DatabaseProvider.getConnection(DatabaseProvider.java:377)
    at oracle.jdeveloper.db.adapter.DatabaseProvider.getConnection(DatabaseProvider.java:354)
    at oracle.jdevimpl.db.adapter.CAConnectionCreator.createConnectionImpl(CAConnectionCreator.java:51)
    at oracle.javatools.db.DatabaseFactory.createConnection(DatabaseFactory.java:838)
    at oracle.javatools.db.DatabaseFactory.createDatabase(DatabaseFactory.java:282)
    at oracle.jdeveloper.db.DatabaseConnections.getDatabase(DatabaseConnections.java:657)
    at oracle.dbtools.raptor.utils.Connections$ConnectionInfo.getDatabase(Connections.java:287)
    at oracle.dbtools.raptor.utils.Connections.getConnection(Connections.java:1183)
    at oracle.dbtools.raptor.utils.Connections.getConnection(Connections.java:1169)
    at oracle.dbtools.raptor.navigator.db.DatabaseConnection.openConnectionImpl(DatabaseConnection.java:83)
    at oracle.dbtools.raptor.navigator.db.DatabaseConnection.openConnectionImpl(DatabaseConnection.java:38)
    at oracle.dbtools.raptor.navigator.db.BaseConnectionNode.getConnection(BaseConnectionNode.java:91)
    at oracle.dbtools.raptor.navigator.db.impl.DatabaseTreeNode.getObjectFactory(DatabaseTreeNode.java:90)
    at oracle.dbtools.raptor.navigator.db.impl.DatabaseTreeNode$LoadTask.doWork(DatabaseTreeNode.java:145)
    at oracle.dbtools.raptor.navigator.db.impl.DatabaseTreeNode$LoadTask.doWork(DatabaseTreeNode.java:119)
    at oracle.dbtools.raptor.backgroundTask.RaptorTask.call(RaptorTask.java:199)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at oracle.dbtools.raptor.backgroundTask.RaptorTaskManager$RaptorFutureTask.run(RaptorTaskManager.java:702)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
    at java.util.concurrent.FutureTask.run(FutureTask.java:266)
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
    at java.lang.Thread.run(Thread.java:748)

标签: oraclewindows-10oracle-sqldeveloperojdbc

解决方案


编辑:使用较新版本的 SQL Developer 时我也无法解决此问题,必须恢复到版本 19.2.0.206 并执行以下操作。

我有一个非常相似的问题,杰夫史密斯的评论帮助我缩小了范围。在Preferences > Database > Advanced中,我必须选中Use Oracle Client并指定 Oracle 驱动程序客户端文件夹:

在此处输入图像描述


推荐阅读