在Tomcat中,我想在Web应用程序中使用jar。 jar文件将存在于Tomcat目录之外。
要在jarcat类路径中包含jar文件,我修改了TomcatHome / conf / catalina.properties以包含我的jar文件的绝对路径,如
shared.loader=D:\jaa\MyJarFile.jar
根据链接中的建议,
http://www.mulesoft.com/tomcat-classpath
但它会引发错误,
java.lang.NoClassDefFoundError
我也试过了,
shared.loader=D:\jaa\*.jar
shared.loader=file:\\D:\jaa\MyJarFile.jar
它们似乎都不起作用:(
如果我尝试将jar放在tomcat / lib中,它似乎有效。但我不允许这样做。
请帮我解决这个问题,因为我已经在下周实施了这个问题。
答案 0 :(得分:10)
我想我自己如何添加tomcat的类路径。而不是编辑catalina.properties,只需使用类路径在Tomcat Bin目录中创建“setenv.sh”,
实施例,
CLASSPATH=D:\jaa\MyJarFile.jar
我刚检查了Tomcat / bin中的catalina.sh,并且在将引导程序设置为类路径时将设置这些classpath变量。
答案 1 :(得分:1)
我使用的是IntelliJ,并且尝试了所有类似的操作:
mysql-connector.jar
的依赖项。没用(唯一有效的是IntelliJ在内部完成代码 正常工作。mysql-connector.jar
添加到apache-home / lib /文件夹。没用。mysql-connector.jar
。只是没用。对我有用的东西:
在mysql-connector.jar
文件夹中包含PROJECT/web/WEB-INF/lib
文件。
无需在任何地方将其添加为依赖项。只需编译它,它将正常工作。
答案 2 :(得分:0)
我发现自己正在复制额外的JAR,这些JAR应该适用于所有上下文,并且应该进入根加载器,进入以下目录:
C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
但这只有在您有权访问此目录时才有可能,但对于所有ISP而言可能并非如此。至少你可以在家里做。
再见