在.net中编译java代码

时间:2012-07-05 19:17:09

标签: java .net compilation

我需要从.net应用程序编译java代码。我尝试运行cmd进程并提供参数,但它不起作用。关于如何让它发挥作用的任何想法?

1 个答案:

答案 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文件列表。