我需要从.net应用程序编译java代码。我尝试运行cmd进程并提供参数,但它不起作用。关于如何让它发挥作用的任何想法?
答案 0 :(得分:2)
我已经为Visual Studio中的Mono For Android项目编译了java文件,基本上你仍然需要使用javac,但是你可以创建一个脚本为你做这个。
免责声明:这是一个适用于简单应用程序的简单脚本,它不会取代专用的Java构建系统,如ANT。我的示例使用PowerShell,但可以使用常规批处理文件应用相同的概念。
我们的库的预建步骤调用了powershell脚本:
powershell.exe -noprofile C:\mypath\Java\buildj.ps1; exit $LASTEXITCODE
以下是执行javac编译的powershell脚本的详细示例:
if (Get-Command javac -errorAction SilentlyContinue)
{
Get-Childitem C:\mypath\Java\JBin -include *.class -recurse | foreach ($_) {Remove-Item $_.fullname}
$JavaList = Get-Content C:\filelist.txt
foreach ($file in $JavaList) {
$command = "javac C:\mypath\Java\JBin " + $file
Write-Host $command
Invoke-Expression $command
}
}
else {
throw "javac could not be located. Check your PATH"
}
在filelist.txt中,你需要有一个包含完整路径的java文件列表。