Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java Maven build跳过清理和验证阶段_Java_Maven - Fatal编程技术网

Java Maven build跳过清理和验证阶段

Java Maven build跳过清理和验证阶段,java,maven,Java,Maven,我正在使用IntellijIDE。我的项目是maven项目。困扰我的是,例如,当从Maven工具栏选择“安装”阶段并单击“运行Maven构建”时 未执行clean阶段: "C:\Program Files\Java\jdk-9.0.1\bin\java" -Dmaven.multiModuleProjectDirectory=A:\custom_software_projects\IdeaProjects\power_management "-Dmaven.home=C:\Program Fil

我正在使用IntellijIDE。我的项目是
maven项目
。困扰我的是,例如,当从Maven工具栏选择“安装”阶段并单击“运行Maven构建”时

未执行
clean
阶段:

"C:\Program Files\Java\jdk-9.0.1\bin\java" -Dmaven.multiModuleProjectDirectory=A:\custom_software_projects\IdeaProjects\power_management "-Dmaven.home=C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\plugins\maven\lib\maven3" "-Dclassworlds.conf=C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\plugins\maven\lib\maven3\bin\m2.conf" "-javaagent:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\lib\idea_rt.jar=53577:C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\JetBrains\IntelliJ IDEA Community Edition 2017.3.2\plugins\maven\lib\maven3\boot\plexus-classworlds-2.5.2.jar" org.codehaus.classworlds.Launcher -Didea.version=2017.3.2 install
[INFO] Scanning for projects...
[INFO]                                                                         
[INFO] ------------------------------------------------------------------------
[INFO] Building power_server 1.0-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO] 
[INFO] --- maven-resources-plugin:2.6:resources (default-resources) @ power_server ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] Copying 5 resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:compile (default-compile) @ power_server ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-resources-plugin:2.6:testResources (default-testResources) @ power_server ---
[WARNING] Using platform encoding (UTF-8 actually) to copy filtered resources, i.e. build is platform dependent!
[INFO] skip non existing resourceDirectory A:\custom_software_projects\IdeaProjects\power_management\src\test\resources
[INFO] 
[INFO] --- maven-compiler-plugin:3.1:testCompile (default-testCompile) @ power_server ---
[INFO] Nothing to compile - all classes are up to date
[INFO] 
[INFO] --- maven-surefire-plugin:2.12.4:test (default-test) @ power_server ---
[INFO] No tests to run.
[INFO] 
[INFO] --- maven-jar-plugin:2.4:jar (default-jar) @ power_server ---
[INFO] 
[INFO] --- maven-assembly-plugin:2.2-beta-5:single (default) @ power_server ---
[INFO] Building jar: A:\custom_software_projects\IdeaProjects\power_management\target\power_server-1.0-SNAPSHOT-jar-with-dependencies.jar
[INFO] 
[INFO] --- maven-dependency-plugin:3.0.2:unpack-dependencies (unpack-sigar) @ power_server ---
[INFO] log4j:log4j:jar:1.2.17 already exists in destination.
[INFO] 
[INFO] --- maven-install-plugin:2.4:install (default-install) @ power_server ---
[INFO] Installing A:\custom_software_projects\IdeaProjects\power_management\target\power_server-1.0-SNAPSHOT.jar to C:\Users\ggeorgiev\.m2\repository\Power_Management_Server\power_server\1.0-SNAPSHOT\power_server-1.0-SNAPSHOT.jar
[INFO] Installing A:\custom_software_projects\IdeaProjects\power_management\pom.xml to C:\Users\ggeorgiev\.m2\repository\Power_Management_Server\power_server\1.0-SNAPSHOT\power_server-1.0-SNAPSHOT.pom
[INFO] Installing A:\custom_software_projects\IdeaProjects\power_management\target\power_server-1.0-SNAPSHOT-jar-with-dependencies.jar to C:\Users\ggeorgiev\.m2\repository\Power_Management_Server\power_server\1.0-SNAPSHOT\power_server-1.0-SNAPSHOT-jar-with-dependencies.jar
[INFO] 
[INFO] --- maven-antrun-plugin:1.4:run (Copying jar-with-dependecnies and fixing LF in .sh scripts) @ power_server ---
project.artifactId
[INFO] Executing tasks
     [copy] Copying 1 file to A:\custom_programs\power_server
[INFO] Executed tasks
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 5.291 s
[INFO] Finished at: 2018-02-10T21:42:17+02:00
[INFO] Final Memory: 17M/56M
[INFO] ------------------------------------------------------------------------

Process finished with exit code 0
因此,正如您所看到的,第一步是
maven资源插件:2.6:resources
。我从中了解到,当我们指定一个阶段时,所有之前的阶段都会执行到所选的阶段。根据maven文件:

此命令在执行安装之前,按顺序执行每个默认生命周期阶段(验证、编译、打包等)。您只需要调用要执行的最后一个构建阶段,在这种情况下,请安装

为什么它要跳过
清理
验证
阶段

编辑:

我在
运行配置
部分也有
清理
阶段,但结果是一样的:
Maven有3种不同的内置功能

有三个内置的构建生命周期:默认清理站点

install
是默认生命周期的一部分,执行
install
时没有理由执行
clean

至于
validate
它没有内置绑定,这意味着它不会:

此外,构建阶段也可以有零个或多个目标。如果构建阶段没有绑定目标,则该构建阶段将不会执行


默认生命周期不包括
clean
。检查

引述:

例如,默认生命周期包括以下阶段 (有关生命周期阶段的完整列表,请参阅生命周期 参考资料):

  • 验证-验证项目是否正确以及所有必要的 信息是可用的
  • 编译-编译 计划
  • 测试-使用合适的单元测试编译的源代码 测试框架。这些测试不应要求对代码进行打包 或部署
  • package-将编译后的代码打包到 可分发的格式,如JAR
  • 验证-在上运行任何检查 确保符合质量标准的集成测试结果
  • 安装-将包安装到本地存储库中,用作 本地其他项目中的依赖关系
  • 部署-在构建中完成 环境中,将最终的包复制到远程存储库中,以便 与其他开发人员和项目共享
另外,
validate
阶段与打包
.jar
文件的默认生命周期没有关联


检查文档底部JAR文件的默认生命周期绑定

Hmm,我不会回答,因为我不知道maven应该在所选阶段之前执行所有之前的阶段。但是,一种解决方法是创建一个maven目标配置,并指定
clean validate install
作为目标。@MarDev我在
运行配置中有
clean
阶段。我将更新问题
clean
可能只是一个奇怪的情况,因为我记得在执行许多任务时必须指定
clean install
——让我查看文档,默认生命周期不包括
clean
生命周期-该
clean
生命周期与默认生命周期是分开的-检查链接到的文档因为您正在打包
.jar
文件,默认生命周期不包括要执行的阶段列表中的验证(参见默认生命周期绑定参考列表中的文档底部,请参见@Oleg的答案。
Default Lifecycle
clean
生命周期和
site
生命周期之间的区别。@khmarbaise我同意,这是一个更好的答案。。我相应地提高了投票。