首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java动态web项目类路径

Java动态web项目类路径
EN

Stack Overflow用户
提问于 2014-10-29 22:01:35
回答 4查看 2.7K关注 0票数 2

同时,我有一个在Tomcat上本地运行的项目,但我计划将来部署到某个服务器上。我有几个问题:

  1. 我在用tomcat-jdbc.jar。我应该如何将这个罐子包括在这个项目中?将其复制到WEB-INF/lib或向tomcat添加库引用?后者是便携式的吗?即使部署到的服务器正在使用jetty,我也可以使用这个jar吗?
  2. 当我添加JRE时,eclipse要求我将它指向JRE路径。在类路径中添加的行是

classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"

eclipse是如何从JRE所在的这一行计算出来的呢?

  1. 当项目被部署到服务器时,项目层次结构会是什么样的呢?

我猜是:

代码语言:javascript
运行
复制
<project name>
----<build> (.class files)
----<WebContent>
--------<META-INF>
------------MANIFEST.MF
--------<WEB-INF>
------------<lib>
----------------external_jar.jar
------------web.xml
---------index.html

这是正确的吗?如果是这样的话,运行时如何知道在哪里找到JRE?还是Tomcat安装文件夹中的tomcat-jdbc.jar?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2014-11-13 09:58:56

您的应用程序需要以下三种类型的“资源”

  1. 系统资源: JRE类,部署在其上的服务器提供的一些扩展/库。
  2. 依赖关系:您使用的任何库,比如公共-utils、poi等等。这些JAR文件都放在web-inf/lib文件夹中。
  3. 你的课。它们与web-inf/classes中的WAR文件一起部署。

所以,回答你的问题:

  1. 如果您正在部署到Tomcat,将提供tomcat-jdbc.jar。不过,要注意这个版本。如果prod服务器是tomcat,而dev是Jetty,那么您需要在本地IDE中提供这个jar,而不是在WAR文件中导出它。但是,如果您正在开发tomcat并在其他服务器上部署,那么这个jar必须与您的war文件(web-inf/lib文件夹)捆绑在一起。Dev和Prod服务器不一定是相同的,但是要注意JRE版本和对Prod服务器提供的库的依赖。
  2. JRE是服务器和IDE的可配置设置(Eclipse)
  3. 项目层次结构是正确的,但您很可能会将其部署为WAR文件,因此构建文件夹将在web-inf/classes中导出。您可以通过使用任何zip编辑器打开WAR文件来验证。

关于tomcat-jdbc.jar的可移植性,不幸的是,这取决于tomcat库和版本。这个jar文件可能有更多的依赖项,这可能会在稍后引起问题。除非您计划部署在tomcat上,否则我建议不要依赖这个jar。

票数 1
EN

Stack Overflow用户

发布于 2014-11-10 18:17:57

  1. 您应该使用生产中将要使用的同一台服务器来测试应用程序。
  2. 要查看和设置jre属性,请参阅eclipse->preferences->java->已安装的jre。
  3. 如果您导出一个war文件,WebContent中的所有文件都将在war中,而src文件夹中的.class文件将位于WEB/类中。

当您使用像tomcat这样的服务器时,它使用您设置的配置。

票数 0
EN

Stack Overflow用户

发布于 2014-11-11 11:50:10

  1. 如果希望应用程序始终引用jar,请将其放在web中。
  2. 正如Daniel下面提到的,eclipse从preferences选项卡下安装的JREs获取JREs。您可以在eclipse中安装和配置多个JRE,然后分别为项目选择并选择default。

3.您的项目层次结构是正确的。运行时将从服务器上设置的JAVA_HOME环境变量获取JRE。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26641425

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档