Browse Source

use forking javah by default

master
Stefan Bodewig 9 years ago
parent
commit
5d6adaef80
3 changed files with 7 additions and 9 deletions
  1. +3
    -0
      WHATSNEW
  2. +1
    -0
      src/main/org/apache/tools/ant/taskdefs/optional/javah/ForkingJavah.java
  3. +3
    -9
      src/main/org/apache/tools/ant/taskdefs/optional/javah/JavahAdapterFactory.java

+ 3
- 0
WHATSNEW View File

@@ -25,6 +25,9 @@ Changes that could break older environments:
be used when running on Java 9 since this option has been removed.
Bugzilla Report 59906

* <javah> will default to the "forking" implementation on Java8
as well.

Fixed bugs:
-----------



+ 1
- 0
src/main/org/apache/tools/ant/taskdefs/optional/javah/ForkingJavah.java View File

@@ -45,6 +45,7 @@ public class ForkingJavah implements JavahAdapter {
* @return true if the compilation was successful.
* @throws BuildException if there is an error.
*/
@Override
public boolean compile(Javah javah) throws BuildException {
Commandline cmd = SunJavah.setupJavahCommand(javah);
Project project = javah.getProject();


+ 3
- 9
src/main/org/apache/tools/ant/taskdefs/optional/javah/JavahAdapterFactory.java View File

@@ -44,10 +44,8 @@ public class JavahAdapterFactory {
return Kaffeh.IMPLEMENTATION_NAME;
} else if (JavaEnvUtils.isGij()) {
return Gcjh.IMPLEMENTATION_NAME;
} else if (JavaEnvUtils.isAtLeastJavaVersion(JavaEnvUtils.JAVA_9)) {
return ForkingJavah.IMPLEMENTATION_NAME;
}
return SunJavah.IMPLEMENTATION_NAME;
return ForkingJavah.IMPLEMENTATION_NAME;
}

/**
@@ -89,9 +87,7 @@ public class JavahAdapterFactory {
} else if ((JavaEnvUtils.isGij() && choice == null)
|| Gcjh.IMPLEMENTATION_NAME.equals(choice)) {
return new Gcjh();
} else if ((JavaEnvUtils.isAtLeastJavaVersion(JavaEnvUtils.JAVA_9)
&& choice == null)
|| ForkingJavah.IMPLEMENTATION_NAME.equals(choice)) {
} else if (ForkingJavah.IMPLEMENTATION_NAME.equals(choice)) {
return new ForkingJavah();
} else if (SunJavah.IMPLEMENTATION_NAME.equals(choice)) {
return new SunJavah();
@@ -102,9 +98,7 @@ public class JavahAdapterFactory {
.createClassLoader(classpath));
}

// This default has been good enough until Ant 1.6.3, so stick
// with it
return new SunJavah();
return new ForkingJavah();
}

/**


Loading…
Cancel
Save