在Powershell IDE中将@targetFile参数传递给cmd javac的问题

时间:2019-06-20 20:11:13

标签: powershell cmd javac

我正在编写一个脚本,以使用javac编译文件夹的所有子目录中的所有java文件。

在powershell.exe中,我可以使用

>cmd

>javac @targetFile.txt

其中targetfile.txt是一个文本文件,仅包含要编译的文件的路径,例如

'A:\path\to\the\java\file.java'

要在脚本中执行该操作,我首先尝试了

cmd.exe /c "javac @targetFile.txt"

这引发了以下NativeCommand错误:

  

cmd.exe:错误:无效标志:在C:\ ps \ javaMake.ps1:15 char:1 + cmd.exe / c“ javac @ targetFile.txt”

删除“ / c”解决了该错误,但脚本随后将挂起,并在屏幕上显示cmd.exe启动消息。

我还尝试了另一种结构:

$javacPATH = Get-Command javac | Select-Object -ExpandProperty Definition
&$javacPATH " @targetFile.txt"

,并收到相同的错误。

我尝试在没有cmd的情况下直接运行Javac(直接在powershell中),并在Powershell.exe中收到以下错误:

  

拼写运算符'@'不能用于引用   表达。 '@targetFile'只能用作   命令。要在表达式中引用变量,请使用“ $ targetFile”。

如何在ISE中的cmd中将@ targetFile.txt参数传递给javac?

0 个答案:

没有答案