我在Tomcat中部署WAR文件。另外我有一个JAR文件。
是否可以在不更改WAR文件的情况下使JAR文件中的类可用于WAR文件中的服务,或者是否已将其添加到WAR的WEB-INF / lib中?
我已尝试将JAR添加到lib/
,但它不起作用。启动时,Spring失败并出现org.springframework.beans.factory.BeanCreationException»java.lang.NoClassDefFoundError。
修改
我意识到我可能会让自己成为一个无法解决的,在建筑上难以解决的问题。事情就是这样:
<bean id="warService" class="com.war.Service" />
<bean id="warService" class="com.mystuff.MyService" />
答案 0 :(得分:1)
或者您可以将它(您的jar文件)放在lib
文件夹下的Tomcat根目录中。 Chk this out:
http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html
根据您的修改
我的mysql-connector-java-5.0.8-bin
文件夹中碰巧有lib
jar。只是为了测试我把它放在我的应用程序上下文中:
<bean id="driver" class="com.mysql.jdbc.Driver" />
作为魅力,检查上面的两个案例
答案 1 :(得分:0)
您可以使用tomcat的lib目录,但已添加的所有jar已经为您服务器中的所有应用程序共享。
答案 2 :(得分:0)
虽然不推荐,但您可以在此方案中使用Tomcat“Common”类加载器。
http://tomcat.apache.org/tomcat-6.0-doc/class-loader-howto.html