我需要从 .net 应用程序编译 java 代码。我尝试运行一个 cmd 进程并给出参数,但它不起作用。关于如何让它发挥作用的任何想法?
问问题
180 次
1 回答
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 文件列表。
于 2012-07-05T19:31:03.037 回答