所以我面临的问题是放慢了我的开发过程。
我在tomcat 8中使用eclipse。 我的软件有3个不同的tomcat服务器,运行在不同的项目上。
同样,我的软件分为8个组件,每个tomcat服务器都使用其他一些项目。
目前我正在使用Jenkins构建我的软件并将jar文件部署到tomcat服务器的web内容文件夹中。
主要问题是构建它需要1分钟,然后我需要刷新eclipse中的所有项目,然后从eclipse重新启动tomcat服务器。
我正在寻找一种更简单,更快捷的方法。
有没有办法指出eclipse中的tomcat服务器实际查看项目的src
文件夹而不是查找jar?
答案 0 :(得分:2)
有一个technique让Tomcat从您的eclipse项目创建Web上下文,而不是构建和部署到Tomcats webapp文件夹。主要优点是不需要构建war
文件或复制类(文件类似于动态Web项目)。
基本上它涉及以下内容:
bin
文件夹的eclipse项目,对jar文件的依赖,可能依赖于其他项目以及包含webapp资源的web
文件夹,包括WEB-INF
文件夹。< / LI>
server.xml
中创建一个指向Tomcat运行应用程序所需的项目资源的上下文,而不是部署到Tomcat。然后,Tomcat从项目位置获取类和资源。上面的链接描述了如何为Tomcat 7做到这一点。在Tomcat 8中,这种技术的语法有changed,看起来像这样(你明白了):
<Context path="/mycontext" docBase="/myproj/web">
<Resources>
<PreResources webAppMount="/WEB-INF/classes" base="/myproj/bin" className="org.apache.catalina.webresources.DirResourceSet"/>
<PreResources webAppMount="/WEB-INF/classes" base="/myproj2/web" className="org.apache.catalina.webresources.DirResourceSet"/>
<PreResources webAppMount="/WEB-INF/lib" base="/myproj/lib" className="org.apache.catalina.webresources.DirResourceSet"/>
<PreResources webAppMount="/WEB-INF/lib" base="/myproj2/lib" className="org.apache.catalina.webresources.DirResourceSet"/>
</Resources>
</Context>
答案 1 :(得分:0)
Had hard time to make @wero solution to work.
Found another useful workaround for this:
Right click on project -> build path -> configure build path -> source
Than you just linking the source of the other project into servlet one.