以下命令可在命令行中使用
mvn clean install -Denunciate.skip
但在 Powershell 中出现了错误中断:
[ERROR] 未知的生命周期阶段“。skip”。您必须按照以下格式指定有效的生命周期阶段或目标:
以下命令可在命令行中使用
mvn clean install -Denunciate.skip
但在 Powershell 中出现了错误中断:
[ERROR] 未知的生命周期阶段“。skip”。您必须按照以下格式指定有效的生命周期阶段或目标:
在编写实际的PowerShell代码时,使用引号可以帮助你。但是,如果你只是想使用普通命令,你可以使用stop-parsing参数来避免PowerShell解析器错误地解释你的代码。
在Windows PowerShell 3.0中引入的停止解析符号(
--%
)指示Windows PowerShell不要将输入解释为Windows PowerShell命令或表达式。在Windows PowerShell中调用可执行程序时,请在程序参数之前放置停止解析符号。这种技术比使用转义字符来防止误解释要容易得多。
因此,对于你的命令,你也可以这样做。
mvn --% clean install -"Denunciate.skip"
如果您在其中混合了变量,则只需根据需要移动停止解析器即可。
通过反复尝试,我得出这个结论(我将Denunciate.skip作为字符串处理,并用引号括起来)
mvn clean install -"Denunciate.skip"
-foo.bar="baz"
)。要将CMD中的双引号传递给PowerShell,我不得不在它们前面加上反斜杠(而不是插入符!)
在CMD提示符下:powershell -Command function detect() { write-host "in detect"; write-host "arg 0: $($args[0])"; write-host "arg 1: $($args[1])"; } exit detect \"-bar.foo=baz\"
在detect中
arg 0: -bar.foo=baz
arg 1: