這是一個相對簡單的問題。 我正在構建一個web應用程序,我必須將該項目的.class文件放入正在部署的war文件中。 所以我想在每次更改源代碼時將合併版本的類文件放入war文件夾中。 這可以通過使用命令行類編譯完成。將.class文件放在war文件夾中
我認爲Apache ANT可能對此有用。我以前沒有用過它。 有人可以告訴這是否是這種事情的方式嗎?
如果是,有沒有人有使用Ant來做相同的教程?
這是一個相對簡單的問題。 我正在構建一個web應用程序,我必須將該項目的.class文件放入正在部署的war文件中。 所以我想在每次更改源代碼時將合併版本的類文件放入war文件夾中。 這可以通過使用命令行類編譯完成。將.class文件放在war文件夾中
我認爲Apache ANT可能對此有用。我以前沒有用過它。 有人可以告訴這是否是這種事情的方式嗎?
如果是,有沒有人有使用Ant來做相同的教程?
實際上,這就是我應該做的 - >轉到java構建路徑並將路徑放在要將源文件放入.class文件的位置。這樣你可以很容易地獲得戰爭文件夾中的最新類文件!它不需要Ant/Maven。
你必須在
Tutorial: Hello World with Apache Ant
在此之前使用ANT一個偉大的教程,你可能想了解什麼是ANT以及如何使用它?所以閱讀
Apache Ant™ 1.8.2 Manual
你應該開始考慮使用Maven你的構建。
Maven使用Convention over configuration這意味着有幾個步驟可以遵循,其中一個主要內容是源代碼樹的佈局。
的關注,這是建立一個簡單的方法,你需要的東西:
directory layout
+- pom.xml
+- src
+- main
+- java
+- resources
+- webapp
+- WEB-INF
+- web.xml
如果您pom.xml
看起來就像這樣:
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>com.stackoverflow</groupId>
<artifactId>Q11314171</artifactId>
<version>1.0-SNAPSHOT</version>
<packaging>war</packaging>
<name>${project.artifactId}-${project.version}</name>
<build>
<finalName>webapp</finalName>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-war-plugin</artifactId>
<version>2.2</version>
</plugin>
</plugins>
</build>
</project>
如果您安裝Maven那麼您需要在根文件夾(pom.xml
文件所在的位置)中執行的操作是發佈mvn install
。
然後,您將在新創建的target
文件夾中有一個war
文件。此war
文件將包含您的src/main/java
路徑中的已編譯類以及必要的資源文件。
Anuj - 您的回答實際上與您在發帖中預期的內容有所偏離。 –