簡體   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