Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何在我自己的webb应用程序清单文件中引用其他war文件中的JAR_Java - Fatal编程技术网

Java 如何在我自己的webb应用程序清单文件中引用其他war文件中的JAR

Java 如何在我自己的webb应用程序清单文件中引用其他war文件中的JAR,java,Java,我的要求是我必须引用web应用程序中其他war文件中的JAR 我正在考虑编辑web应用程序的清单文件以添加其他war文件的JAR,但我不知道在清单文件中添加什么 任何人都可以在这方面帮助我。您的web应用程序应该至少在一个Servlet容器中运行,对吗 因此,您必须将第二个webapp jar移动到应用程序服务器的库目录中(例如,Tomcat AS的lib),这样,这些jar下的类将可用于两个web应用程序(甚至是作为应用程序运行的所有web应用程序) 注意:将公共依赖项打包到war归档下已经是

我的要求是我必须引用web应用程序中其他war文件中的JAR

我正在考虑编辑web应用程序的清单文件以添加其他war文件的JAR,但我不知道在清单文件中添加什么


任何人都可以在这方面帮助我。

您的web应用程序应该至少在一个Servlet容器中运行,对吗

因此,您必须将第二个webapp jar移动到应用程序服务器的库目录中(例如,Tomcat AS的lib),这样,这些jar下的类将可用于两个web应用程序(甚至是作为应用程序运行的所有web应用程序)

注意:将公共依赖项打包到war归档下已经是一种不好的做法,因为这些依赖项应该在多个上下文中共享,所以您应该检查打包策略

编辑:如何在Tomcat中声明共享类路径 要在Tomcat中定义共享类路径,以便您的所有上下文都可以访问:

  • 导航到服务器主页($CATALINA_home)并打开conf/目录下的CATALINA.properties文件
  • 查找shared class loader部分并添加/修改shared loader,如下所示:

    shared.loader="/path-to-shared-classes"
    

您需要查找类路径表单规则,您的可能是
“$CATALINA_HOME/webapps/middlewar/WEB-INF/lib/*.jar”

无法直接将jar添加到您的WEB应用程序中吗?我想直接添加,但不可能。如果有助于解决您的问题,我想您应该接受答案。谢谢您的回复,但不幸的是,我的经理想要部署一个单独的war文件。你能告诉我用单独的war文件解决这个问题的步骤吗?你是如何包装你的应用程序的?你在使用构建工具吗?我没有使用构建工具。它是一个简单的web应用程序,所以从EclipseIDE导出war文件,另一个应用程序在哪里?同样的情况也适用,它是一个Eclipse项目吗?那么这些依赖关系又是什么呢?把罐子装进图书馆还是什么?您可能需要提供详细的描述,即使是两个项目的快照也会受到高度欢迎。让我向您解释清楚:实际上,我们正在使用Kony studio开发一个移动应用程序。我正在使用kony studio进行服务器端开发(它只是eclipse上的一个插件),这是一个中间件开发。我们在tomcat服务器上安装kony服务器。所以在tomcat的“webapps”目录中会有一个“中间件”目录(因为我们已经在tomcat上安装了kony服务器)。现在,无论我为我的移动应用程序开发什么样的服务,我都会将这些.jar文件放在tomcat的webapps/middlewar/web inf/lib目录中。