我正在尝试使用Lombok Maven插件来确保在使用Lombok时正确创建Javadoc .
Lombok Maven在编译之前引入了一个新的代码生成目标.在我的配置中,我的sourceDirectory(带有Lombok注释的Java src/main/java)被处理为创建Java(没有Lombok注释)target/generated-sources/delombok.
但是,sourceDirectory现在每个文件都有一个相应的(同名)文件target/generated-sources/delombok,导致由于重复的类导致编译失败.
如何告诉Java编译器忽略源代码sourceDirectory?
请注意,默认的Lombok Maven配置会让开发人员将Java(带有Lombok注释)放在src/main/lombok文件夹中而不是src/main/java.但是,我不希望这样做,因为它混淆了IDE,我的代码编译得很好(如果我删除了Maven插件).
另请注意,简单地重新定义sourceDirectory也会破坏IDE(他们不再知道在哪里可以找到Java源代码!).
我有一个maven项目,我用Netbeans编译.我有办法指定一个不同的构建目录,编译后复制编译的二进制代码?
我开始学习几个发行版的包装(目前是Cygwin和Debian).
他们需要构建系统以允许树外构建(同义词源外构建):
http://wiki.debian.org/UpstreamGuide#Out-of-Tree_Builds
要解决"dumb"构建系统,例如cygport建议使用lndir(来自xutils项目):
lndir ${S} ${B}
cd {B}
...build-commands...
我读了mvn(1)手册页,但没有找到任何适当的东西.接下来我试试:
$ mvn archetype:generate -DgroupId=com.mycompany.app -DartifactId=my-app -DarchetypeArtifactId=maven-archetype-quickstart -DinteractiveMode=false ... $ pwd /maven/simple $ ls my-app $ mvn -f my-app/pom.xml compile ... [INFO] --- maven-compiler-plugin:2.0.2:compile (default-compile) @ my-app --- [INFO] Compiling 1 source file to /maven/simple/my-app/target/classes
正如您可以看到在源根层次结构中创建的目标目录,而我正在寻找避免这种情况的方法.
是否可以使用maven 进行树外构建?如何?
是否可以获取我的项目的目录 ${project.build.directory}/test-1.0-SNAPSHOT ?
我必须从该目录中排除某些文件以进行强化扫描,并且我刚刚意识到当版本更改时该目录也会更改。是否有一个属性可以用来替换该目录的名称?