在编译nacos的时候遇到一个问题,当时是执行如下命令:
mvn -Prelease-nacos -Dmaven.test.skip=true clean install -U
报出问题如下
[ERROR] Unknown lifecycle phase ".test.skip=true". You must specify a valid lifecycle phase or a goal in the format <plugin-prefix>:<goal> or <plugin-group-id>:<plugin-artifact-id>[:<p
lugin-version>]:<goal>. Available lifecycle phases are: validate, initialize, generate-sources, process-sources, generate-resources, process-resources, compile, process-classes, genera
te-test-sources, process-test-sources, generate-test-resources, process-test-resources, test-compile, process-test-classes, test, prepare-package, package, pre-integration-test, integr
ation-test, post-integration-test, verify, install, deploy, pre-clean, clean, post-clean, pre-site, site, post-site, site-deploy. -> [Help 1]
[ERROR]
[ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
[ERROR] Re-run Maven using the -X switch to enable full debug logging.
[ERROR]
[ERROR] For more information about the errors and possible solutions, please read the following articles:
[ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/LifecyclePhaseNotFoundException
粗略一看是 -Dmaven.test.skip=true 附近出现的问题,但是这条命令是nacos官网拷贝过来的,一般不会有问题。
问题出现的原因是powerShell错误的识别了这条命令,给它加上单引号就可以了
mvn -Prelease-nacos '-Dmaven.test.skip=true' clean install -U
此外,idea的默认也是用的powerShell,也可能会导致这样的问题