Tomcat找不到gdk_custom.jar,Oracle无法创建它?

时间:2017-08-02 12:21:14

标签: oracle tomcat

启动Tomcat 8,我收到警告:

02-Aug-2017 11:14:21.363 WARNING [RMI TCP Connection(5)-127.0.0.1]
org.apache.tomcat.util.scan.StandardJarScanner.scan
Failed to scan 
[file:/C:/Users/543829657/HomeTomcat/tomcat/lib/gdk_custom.jar] from
classloader hierarchy java.io.FileNotFoundException: 
C:\Users\543829657\HomeTomcat\tomcat\lib\gdk_custom.jar 
(The system cannot find the file specified)

我找到的所有答案,建议由Oracle gdk_custom.jar创建ginstall文件。我将谷歌搜索限制在过去两年,答案为here

java -classpath $ORACLE_HOME/jlib/orai18n.jar:$ORACLE_HOME/lib/xmlparserv2.jar ginstall -add <Name of NLT file>

但推出这条线:

>java -classpath c:/Oracle/jlib/orai18n.jar:c:/Oracle/lib/xmlparserv2.jar ginstall -add lx2dddd.nlt

结果显示消息:

Error: Could not find or load main class ginstall

我调查了orai18n.jar。真的,里面没有ginstallGinstall位于orai18n-tools.jar

>java -classpath orai18n-tools.jar Ginstall -add lx2dddd.nlt

Usage: Ginstall [-dOutputDir] <NLT file> ...
-d: indicates the directory where the output file is written to
    do not specify 'd' for UDC, a zip file gdk_custom.zip will be
    written to the current directory

好的,似乎已弃用Oracle文档上的文本。

>java -classpath orai18n-tools.jar Ginstall -d. lx2dddd.nlt

现在它走得更远,但又失败了:

Exception in thread "main"
java.lang.NoClassDefFoundError:oracle/xml/parser/v2/DOMParser
    at oracle.i18n.util.builder.NLTParser.<init>(NLTParser.java:72)
    at oracle.i18n.util.builder.CharSetParser.<init>(CharSetParser.java:44)
    at oracle.i18n.util.builder.CharSetParser.getInstance(CharSetParser.java:64)
    at oracle.i18n.util.builder.CharDataTypeParser.<init>(CharDataTypeParser.java:123)
    at oracle.i18n.util.builder.CharConvBuilder.buildGLB(CharConvBuilder.java:95)
    at Ginstall.main(Ginstall.java:96)
Caused by: java.lang.ClassNotFoundException: oracle.xml.parser.v2.DOMParser
    at java.net.URLClassLoader.findClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source)
    at java.lang.ClassLoader.loadClass(Unknown Source)
    ... 6 more

也许,解析器是必要的?但

>java -cp orai18n-tools.jar;c:/Oracle/lib/xmlparserv2.jar Ginstall -d. lx2dddd.nlt

有相同的结果。

并没有创建gdk_custom.jar(也没有zip)......

有趣的是,根据http://www.findjar.com/jar/com.oracle/oc4j/11/jars/xmlparserv2.jar.html?all=true,xmlparserv2.jar必须包含DOMParser类。

如何获得gdk_custom.jar

Oracle是12.

1 个答案:

答案 0 :(得分:7)

我们无需创建gdk_custom.jar

我们所需要的就是阻止Tomcat寻找它。由于Tomcat 8.0.38正在扫描by default。我们应该关闭扫描。因此,您不会看到许多过多的警告,并且服务器的启动会更快。

tomcat/conf/context.xml中添加以下行:

<Context>
  ...
  <JarScanner scanManifest="false"/>
</Context>