无论如何,将.class文件放在war文件夹中

时间:2012-07-03 15:24:57

标签: java java-ee ant build war

这是一个相对简单的问题。 我正在构建一个Web应用程序,我必须将项目的.class文件放入我正在部署的war文件中。 因此,每次我对源代码进行更改时,我都希望将类文件的编译版本放入war文件夹中。 如何使用命令行类编译来完成此操作。

我认为Apache ANT可能对此有用。我以前没用过它。 有人能告诉你这是不是可以解决这个问题?

如果是,是否有人使用Ant进行相同的教程?

3 个答案:

答案 0 :(得分:2)

你有很好的使用ANT的教程 Tutorial: Hello World with Apache Ant

在此之前,您可能想了解ANT是什么以及如何使用它?所以阅读
Apache Ant™ 1.8.2 Manual

答案 1 :(得分:2)

您应该开始考虑使用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

然后,您将在新创建的war文件夹中拥有target个文件。此war文件将包含src/main/java路径中已编译的类以及必要的资源文件。

答案 2 :(得分:-1)

实际上,这就是我应该做的 - &gt;转到java构建路径并将路径放在要在源部分中放置.class文件的位置。这样您就可以轻松获取war文件夹中的最新类文件!不需要Ant / Maven。