我有一个项目,同时在Tomcat本地运行,但我计划将来部署到某个服务器。 我有几个问题:
tomcat-jdbc.jar
。我应该如何在项目中包含该jar?将其复制到WEB-INF/lib
或向tomcat添加库引用?后者便携式?即使我正在部署的服务器使用jetty,我也可以使用这个jar吗?JRE
时,eclipse要求我将其指向JRE
路径。在类路径中添加的行是 classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"
eclipse如何从JRE所在的这一行中找出来?
我的猜测是:
<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?
答案 0 :(得分:0)
当您使用像tomcat这样的服务器时,它会使用您在其上设置的配置。
答案 1 :(得分:0)
3.您的项目层次结构是否正确。运行时将从服务器上设置的JAVA_HOME环境变量中获取JRE。
答案 2 :(得分:0)
您的应用程序需要以下三种类型的“资源”
所以,回答你的问题:
关于tomcat-jdbc.jar的可移植性 不幸的是,这取决于tomcat库和版本。此jar文件可能存在更多依赖项,这可能会在以后导致问题。除非你打算在tomcat上部署,否则我建议不要依赖这个jar。
答案 3 :(得分:0)
1)池连接,它是Application Server提供的服务(在本例中为Tomcat)。恕我直言,你必须避免使用特定的实现绑定你的应用程序,在这种情况下使用通用的javax.sql.DataSource进行expample,然后“注入”或从服务器查找implmementation。然后,如果您使用Jetty,请配置您想要的连接池实现https://wiki.eclipse.org/Jetty/Howto/Configure_JNDI_Datasource
所以不要包含在你的web-inf / lib tomcat-jdbc.jar中。
2)“org.eclipse.jdt.launching.JRE_CONTAINER”它是eclipse的内部变量,值是你在eclipse属性上配置的。它用于eclipse编译和运行你的应用程序。
3)在你的项目结构“.class”文件中,必须进入“WEB-INF / classes”。它由servlet规范定义。如果选择yor项目并右键单击运行“导出” - > Eclipse,Eclipse会自动生成正确的结构。 “战争档案”。或者你可以使用maven。