Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用myown版本java.exe的ant java标记_Java_Ant - Fatal编程技术网

使用myown版本java.exe的ant java标记

使用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不能提供一个简单的方法来实现这一点?你可能想试试这个方法,因为上次我使用它时,它的参数有点复杂,您可能需要尝试各种

我有不同的jdk可用。我尝试了antjavac
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
属性就是您想要的。