使用maven编译时,是否需要在/src/main/java中包含.java文件?
我试着把一个项目转换成一个专业的项目。。。它的.java文件位于/src/main/java以外的其他位置,当我运行maven安装时,除了那些.class文件以外的所有文件(.hbm、.xml)都出现在我的jar中 这是pom.xml中的构建部分:使用maven编译时,是否需要在/src/main/java中包含.java文件?,java,maven-2,layout,Java,Maven 2,Layout,我试着把一个项目转换成一个专业的项目。。。它的.java文件位于/src/main/java以外的其他位置,当我运行maven安装时,除了那些.class文件以外的所有文件(.hbm、.xml)都出现在我的jar中 这是pom.xml中的构建部分: <build> <resources> <resource> <directory>${basedir}/src</directory>
<build>
<resources>
<resource>
<directory>${basedir}/src</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<source>1.5</source>
<target>1.5</target>
<fork>true</fork>
<compilerVersion>1.5</compilerVersion>
<compilerArguments>
<encoding>UTF-8</encoding>
</compilerArguments>
</configuration>
</plugin>
</plugins>
</build>
${basedir}/src
**/*.爪哇
maven编译器插件
1.5
1.5
真的
1.5
UTF-8
使用上述代码,我的jar中缺少.class文件。。。并且控制台上不会显示错误消息,是否需要将它们移动到/src/main/java包结构
还有,这种行为的原因是什么,缺少依赖项
我做了一个更改,将它们移动到src/main/java,在控制台上出现了一些异常,但我仍然不清楚是否“必须”将它们添加到这个“src/main/java”结构中
请给我一个关于这个的想法
谢谢到目前为止,最简单的解决方案(如果在您的环境中可能的话)是将代码移动到/src/main/java,因为这正是maven所期望的。这是不可能的,您至少需要告诉maven在哪里可以找到源代码。从您的POM中,我看不到您在哪里做过这件事。如果您想使用Maven,阻力最小的途径就是遵守Maven惯例。当然你可以有一个不同的源路径,但它肯定更复杂(似乎唯一的方法就是这样),你得到了什么?我相信移动源目录要容易得多。看一下。这就是你获得“大会”的地方。如果您有不同的Internet项目布局,您可能必须更改项目POM中的某些设置,但这不是前面提到的好建议。您可以将源目录配置为与以下资源相同:
<build>
<sourceDirectory>${basedir}/src</sourceDirectory>
<resources>
<resource>
<directory>${basedir}/src</directory>
<excludes>
<exclude>**/*.java</exclude>
</excludes>
</resource>
</resources>
</build>
${basedir}/src
${basedir}/src
**/*.爪哇
这不是严格必要的-它是可配置的-但Maven附带了一个,强烈建议像其他Maven约定一样接受它(不要反对Maven,采用它)
我知道您正在从Ant迁移到Maven,但您并没有走上正确的道路,让Maven适应您现有的项目结构/工作流程只是而不是推荐的方法:
src/main/java
,target/classes
,等等),并且不喜欢更改默认值