使用myown版本java.exe的ant java标记
我有不同的jdk可用。我尝试了antjavac的使用myown版本java.exe的ant java标记,java,ant,Java,Ant,我有不同的jdk可用。我尝试了antjavac的executable和fork属性,要求ant使用特定的javac.exe来编译代码。但是找不到方法让AntJava标记使用特定的java.exe 我尝试了dir和fork属性。这似乎不是一个正确的方法 你有没有办法让ant使用我想要的与系统中的不同的java.exe?我正在使用Windows7 编辑: 我在网上搜索,不明白为什么ant不能提供一个简单的方法来实现这一点?你可能想试试这个方法,因为上次我使用它时,它的参数有点复杂,您可能需要尝试各种
executable
和fork
属性,要求ant使用特定的javac.exe来编译代码。但是找不到方法让AntJava标记使用特定的java.exe
我尝试了dir
和fork
属性。这似乎不是一个正确的方法
你有没有办法让ant使用我想要的与系统中的不同的java.exe?我正在使用Windows7
编辑:
我在网上搜索,不明白为什么ant不能提供一个简单的方法来实现这一点?你可能想试试这个方法,因为上次我使用它时,它的参数有点复杂,您可能需要尝试各种传递参数的方法以及各种其他JVM参数,以获得正确的引导类路径。使用JVM
属性演示如何执行此操作:
<java classname="ShowJavaVersion"
classpath="."
jvm="path-to-java14-home/bin/java"
fork="true"
taskname="java1.4">
使用给定的Java实现(Ant当前使用的另一个实现)来运行该类。对于日志中的文档,taskname用于将[java]日志前缀更改为[java1.4]
我实际上试过jvm,它似乎不是为了这个目的。无论如何,我会再试一次。考虑到示例后面的文档中所写的内容(以及我添加到答案中的内容),它似乎真的就是为了这个目的。@5YrsLaterDBA有什么证据表明它不是正确的选项?我几乎肯定是的,虽然我现在不能测试。是我的错。经过再次测试,我发现这是正确的方法。谢谢。
dir
是JVM启动的地方;它与正在使用的JVM无关。jvm
属性就是您想要的。