Java 如何配置自定义maven项目结构

Java 如何配置自定义maven项目结构,java,maven,build,jenkins,Java,Maven,Build,Jenkins,我知道典型的maven结构是这样的: pom.xml src - main - web - WEB-INF 然而,我有一个项目,它具有以下结构 src - main web - WEB-INF 上述两种方法中的后一种目前不使用maven。我已经开始在本地使用maven,使结构符合maven标准。然而,我现在想通过使这个项目脱离源代码管理(svn),从jenkins自动构建它。所以我只想添加一个pom.xml,它知道web不在src maven有可能做到这一点吗

我知道典型的maven结构是这样的:

 pom.xml
 src
   - main
   - web
    - WEB-INF
然而,我有一个项目,它具有以下结构

src
  - main
web
  - WEB-INF
上述两种方法中的后一种目前不使用maven。我已经开始在本地使用maven,使结构符合maven标准。然而,我现在想通过使这个项目脱离源代码管理(svn),从jenkins自动构建它。所以我只想添加一个pom.xml,它知道
web
不在
src


maven有可能做到这一点吗?

使用maven war插件属性,您可以设置
warSourceDirectory
属性(我不确定您到底遇到了什么问题,因此这可能解决不了您的特定问题)

然而,maven非常固执己见,我强烈建议使用预期的maven结构。其他插件可能会给您带来意想不到的问题,当您遵循它们的约定时,maven life通常会轻松得多。

您可以将配置为使用另一个插件,但正如Jeff Storey在他的文章中所解释的,这确实是不推荐的

这就是你要做的:

<project>
    ...
    <build>
        <plugins>
            <plugin>
                <artifactId>maven-war-plugin</artifactId>
                <version>2.3</version>
                <configuration>
                    <warSourceDirectory>web</warSourceDirectory>
                </configuration>
            </plugin>
        </plugins>
    </build>
    ...
</project>

...
不会用完盒子。默认情况下,它将在
src/main/webapp
中查找,因此必须对其进行配置


您可能不使用
maven jetty插件
,但您知道了。

您的链接链接回到了这个问题。但是现在您链接到的是一个旧的maven 1.x版本的war。只要创建了war,这是可以接受的。现在正在创建war,但是,通过上面的更改,您建议war不包括我的src类。@birdy您的来源在哪里
src/main/java
或其他地方?为什么不将本地更改提交给svn?