Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/2.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 如何在ubuntu中将我的JAR库添加到tomcat7安装中_Java_Tomcat_Configuration_Tomcat7 - Fatal编程技术网

Java 如何在ubuntu中将我的JAR库添加到tomcat7安装中

Java 如何在ubuntu中将我的JAR库添加到tomcat7安装中,java,tomcat,configuration,tomcat7,Java,Tomcat,Configuration,Tomcat7,我正在尝试用tomcat7安装ubuntu服务器,我用basic安装了tomcat7 sudo apt get install tomcat7在ubuntu中,我在我的应用程序中有一些常用的库,比如JSTL和其他东西,所以我想把它们放在webserver include文件夹中 我已经把他们在每一个地方在服务器上搜索后,互联网,但从来没有得到加载,哪里是正确的位置把他们 我在windows上做过这项工作,效果很好,但在ubuntu上似乎不起作用,或者我应该以其他方式安装tomcat吗?我强烈建议

我正在尝试用tomcat7安装ubuntu服务器,我用basic安装了tomcat7

sudo apt get install tomcat7
在ubuntu中,我在我的应用程序中有一些常用的库,比如JSTL和其他东西,所以我想把它们放在webserver include文件夹中

我已经把他们在每一个地方在服务器上搜索后,互联网,但从来没有得到加载,哪里是正确的位置把他们


我在windows上做过这项工作,效果很好,但在ubuntu上似乎不起作用,或者我应该以其他方式安装tomcat吗?

我强烈建议不要这样做

您可能会遇到类加载器问题,共享库无法看到您的代码


通常的方法是将共享代码作为EAR的一部分进行部署,但普通Tomcat实现的JavaEE太少,无法支持这一点。对于这个级别,只需部署您需要的内容,并将其保持在该级别即可。这也使得在需要时更容易切换容器-Jetty是开发的一个很好的替代方案。

您必须为应用程序创建一个实例,之后将创建一个包含所有配置的文件夹,通常在/etc/tomcat7/TEST-INSTANCE下。当您将实例命名为TEST-INSTANCE时,情况就是这样。在此文件夹中,您可以找到另一个名为webapp的文件夹,您可以在其中部署应用程序。另外还有一个名为bin的文件夹,您可以在其中初始化运行./startup.sh命令的TOMCAT7服务器。在下面的链接中,您可以看到更深入的描述

使用您提供的命令,我的库位于

/usr/share/tomcat7/lib

如果你在Ubento上,你可以试试类似的东西


找到tomcat7/lib

在Ubuntu中安装tomcat7包后,您可以使用tomcat实例创建创建自己的tomcat实例。在其他文件中,该命令创建/conf/catalina.properties,它定义

common.loader=${catalina.base}/lib、${catalina.base}/lib/*.jar、${catalina.home}/lib/*.lib、${catalina.home}/lib/*.jar、${catalina.home}/common/classes、${catalina.home}/common/*.jar


如果您的jar位于common.loader引用的任何位置,它将在实例中的所有应用程序之间共享。CATALINA_BASE是您在tomcat实例创建中指定的。因此,要在tomcat7软件包更新之间保留您的公共库,请将它们放入/lib

您确定Tomcat安装在哪个文件夹中了吗?不确定。真的,不要。这些库应该被indide到每个webapp的WEB-INF/lib文件夹中。这将允许您在一个web应用程序中使用它,而不在所有其他web应用程序中更新它。@jbnize我不同意您的看法,但在这种情况下,OP希望/需要所有web应用程序共享JSTL库,这不是一个坏做法(不像为所有项目添加SpringMVC或jsf库,如果你永远不会在应用程序中使用这些框架的特性,这可能是不好的)。这取决于您应该向应用程序服务器加载器添加哪种库。即使是JSTL也可能会随着时间的推移而发展,新的Web应用程序可能会在一段时间后使用新版本。我在尝试使所有版本在我的应用程序中保持一致时遇到了一些问题,因此我需要此解决方案。但这不是很好如果我在每个web应用程序中反复部署相同的库,它的大小会变大,如果我们要更改某个库,我们必须检查所有应用程序以更改它,然后重新部署所有应用程序,这似乎是浪费时间。除非您与服务器的连接非常慢,否则重新部署应该不是什么大问题“如果我们更新我们的库怎么办”部分是一个更有趣的问题,它将引导您如何管理您的软件,特别是关于如何维护交付给客户的软件的部分。