【问题标题】:Putting .class files in war folder by someway以某种方式将.class文件放在war文件夹中
【发布时间】:2012-07-03 15:24:57
【问题描述】:

这是一个相对简单的问题。 我正在构建一个 Web 应用程序,我必须将项目的 .class 文件放入我正在部署的 war 文件中。 所以每次修改源代码时,我都想把编译好的类文件放到war文件夹中。 如何使用命令行类编译来完成。

我认为 Apache ANT 可能对此有用。我以前没有使用过它。 有人可以判断这是否是解决这件事的方法吗?

如果有,有没有人有使用 Ant 做同样事情的教程?

【问题讨论】:

    标签: java jakarta-ee ant build war


    【解决方案1】:

    您在
    Tutorial: Hello World with Apache Ant

    获得了有关使用 ANT 的精彩教程

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

    【讨论】:

      【解决方案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

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

      【讨论】:

      • @Downvoter 好的,谢谢。现在我知道我的答案有什么问题......问题上没有 Maven 标签?答案太长?题外话?再次感谢!
      • 投反对票的人可能是疯子。我说什么都能完成工作。两种我都用过,各有优缺点。
      【解决方案3】:

      实际上,这是我应该做的 -> 转到 java 构建路径并将路径放在那里你想在源代码部分中放置 .class 文件的位置。让你轻松获取war文件夹中最新的class文件!不需要 Ant/Maven。

      【讨论】:

      • Anuj - 您的回答实际上与您在帖子中的预期有所不同。
      猜你喜欢
      • 2011-05-28
      • 1970-01-01
      • 1970-01-01
      • 2012-09-26
      • 1970-01-01
      • 1970-01-01
      • 2016-06-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多