繁体   English   中英

自动将新的Jar文件复制到Tomcat项目WEB-INF / lib文件夹中

[英]Automatically copy new Jar file to Tomcat project WEB-INF/lib folder

我正在开发Tomcat应用程序(实际上它是Red5应用程序,但这实际上是相同的)。

它包含通常的/ WebContent / WEB-INF / lib文件夹,在这里可以找到它使用的各种jar。

最近,我从我的应用程序项目中提取了一个程序包,并将其转换为一个单独的Jar项目,然后将该项目作为开源发布(驻留在同一工作区中)。

我想要的是,当我构建Tomcat应用程序时,Eclipse会自动将我构建的最新版本的Jar放入其/ WebContent / WEB-INF / lib文件夹中。

这是当您从另一个项目中引用一个项目时,.NET的行为,我想这就是为什么我期望找到某种方式来实现它的原因。

目前,每次构建时,我都必须手动复制/粘贴Jar。

当然,理想情况下,当我构建Tomcat应用程序时,它会自动检测Jar项目是否也是最新的,如果不是,则进行构建。

非常感谢收到任何建议。

我一直在尝试执行此操作-而且我几乎可以正常运行了。 我在WEB-INF / lib目录中有3个类库,因此我为每个类库eclipse项目创建了自定义的Ant构建器规则,以便在项目源发生更改时都创建lib / classlib .jar文件(搜索“ Eclipse帮助中的“创建项目构建器Ant buildfile”。

然后,我将每个jar文件(仅添加项目引用还不够)添加到Web项目的“ Java EE模块依赖关系”部分。

导出Web项目时,它们将显示在.war文件中。 我还没有找到一种无需导出就可以将它们放入其中的方法(我想就地调试而不是部署.war文件)。

我必须同意systempuntoout的观点,即最可能的解决方案是使用Ant构建器。

编辑:Ant复制任务正常工作。 将一个名为copylibs.xml的文件添加到Web项目的根目录中:

<?xml version="1.0" encoding="UTF-8"?>
<project name="copylibs" default="copylibs" basedir=".">

    <target name="copylibs" description="Copy dependent jar files">
        <copy file="../com-aaaa-util/lib/com-aaaa-util.jar" todir="webroot/WEB-INF/lib/" />
        <copy file="../com-aaaa-mnp/lib/com-aaaa-mnp.jar" todir="webroot/WEB-INF/lib/" />
        <copy file="../com-aaaa-bbbb/lib/com-aaaa-bbbb.jar" todir="webroot/WEB-INF/lib/" />
    </target>
</project>

然后添加一个Ant构建器以在构建期间执行此操作。

我会选择以下构建工具:
1. Ant使用文件任务
2. Maven

您可以将Eclipse WTP配置为直接从Eclipse工作区自动组装Web应用程序,而无需复制任何jar。 这样,您对从属项目的更改将立即反映在已部署的Web应用程序中。

或者,可以使用Ant或Maven脚本将jar复制到所需的位置。 使用Maven,您几乎可以免费获得它,而无需编写任何脚本或其他配置。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM