Browse Source

More easily avoidable 1.x confusion removed

master
jkf 6 years ago
parent
commit
7b825e7c96
3 changed files with 37 additions and 77 deletions
  1. +0
    -51
      src/main/org/apache/tools/ant/launch/Locator.java
  2. +30
    -20
      src/main/org/apache/tools/ant/taskdefs/Javadoc.java
  3. +7
    -6
      src/main/org/apache/tools/ant/taskdefs/compilers/JavacExternal.java

+ 0
- 51
src/main/org/apache/tools/ant/launch/Locator.java View File

@@ -164,57 +164,6 @@ public final class Locator {
* @since Ant 1.6
*/
public static String fromURI(String uri) {
return fromURIJava13(uri);
// #buzilla8031: first try Java 1.4.
// TODO should use java.net.URI now that we can rely on 1.4...
// but check for UNC-related regressions, e.g. #42275
// (and remember that \\server\share\file -> file:////server/share/file
// rather than -> file://server/share/file as it should;
// fixed only in JDK 7's java.nio.file.Path.toUri)
// return fromUriJava14(uri);
}

/**
* Java1.4+ code to extract the path from the URI.
* @param uri
* @return null if a conversion was not possible
*/
/* currently unused:
private static String fromUriJava14(String uri) {
// Also check for properly formed URIs. Ant formerly recommended using
// nonsense URIs such as "file:./foo.xml" in XML includes. You shouldn't
// do that (just "foo.xml" is correct) but for compatibility we special-case
// things when the path is not absolute, and fall back to the old parsing behavior.
if (uri.startsWith("file:/")) {
try {
File f = new File(URI.create(encodeURI(uri)));
//bug #42227 forgot to decode before returning
return decodeUri(f.getAbsolutePath());
} catch (IllegalArgumentException e) {
// Bad URI, pass this on.
// no, this is downgraded to a warning after various
// JRE bugs surfaced. Hand off
// to our built in code on a failure
//throw new IllegalArgumentException(
// "Bad URI " + uri + ":" + e.getMessage(), e);
e.printStackTrace();
} catch (Exception e) {
// Unexpected exception? Should not happen.
e.printStackTrace();
}
}
return null;
}
*/

/**
* @param uri uri to expand
* @return the decoded URI
* @since Ant1.7.1
*/
private static String fromURIJava13(String uri) {
// Fallback method for Java 1.3 or earlier.

URL url = null;
try {
url = new URL(uri);


+ 30
- 20
src/main/org/apache/tools/ant/taskdefs/Javadoc.java View File

@@ -1846,7 +1846,11 @@ public class Javadoc extends Task {
doDocFilesSubDirs(toExecute); // docfilessubdir attribute
doModuleArguments(toExecute);

doJava14(toExecute);
doTags(toExecute);
doSource(toExecute);
doLinkSource(toExecute);
doNoqualifier(toExecute);
if (breakiterator) {
toExecute.createArgument().setValue("-breakiterator");
}
@@ -2207,9 +2211,30 @@ public class Javadoc extends Task {
}
}

// Do java1.4 arguments
private void doJava14(final Commandline toExecute) {
for (final Object element : tags) {
private void doNoqualifier(final Commandline toExecute) {
if (noqualifier != null && doclet == null) {
toExecute.createArgument().setValue("-noqualifier");
toExecute.createArgument().setValue(noqualifier);
}
}

private void doLinkSource(final Commandline toExecute) {
if (linksource && doclet == null) {
toExecute.createArgument().setValue("-linksource");
}
}

private void doSource(final Commandline toExecute) {
final String sourceArg = source != null ? source
: getProject().getProperty(MagicNames.BUILD_JAVAC_SOURCE);
if (sourceArg != null) {
toExecute.createArgument().setValue("-source");
toExecute.createArgument().setValue(sourceArg);
}
}

private void doTags(final Commandline toExecute) {
for (final Object element : tags) {
if (element instanceof TagArgument) {
final TagArgument ta = (TagArgument) element;
final File tagDir = ta.getDir(getProject());
@@ -2254,22 +2279,7 @@ public class Javadoc extends Task {
}
}
}

final String sourceArg = source != null ? source
: getProject().getProperty(MagicNames.BUILD_JAVAC_SOURCE);
if (sourceArg != null) {
toExecute.createArgument().setValue("-source");
toExecute.createArgument().setValue(sourceArg);
}

if (linksource && doclet == null) {
toExecute.createArgument().setValue("-linksource");
}
if (noqualifier != null && doclet == null) {
toExecute.createArgument().setValue("-noqualifier");
toExecute.createArgument().setValue(noqualifier);
}
}
}

private void doDocFilesSubDirs(final Commandline toExecute) {
if (docFilesSubDirs) {


+ 7
- 6
src/main/org/apache/tools/ant/taskdefs/compilers/JavacExternal.java View File

@@ -64,12 +64,13 @@ public class JavacExternal extends DefaultCompilerAdapter {

String[] commandLine = cmd.getCommandline();
int firstFileName;
if (assumeJava11()) {
firstFileName = -1;
} else {
firstFileName = moveJOptionsToBeginning(commandLine);
}

if (assumeJava1_2Plus()) {
firstFileName = moveJOptionsToBeginning(commandLine);
} else {
firstFileName = -1;
}
return executeExternalCompile(commandLine, firstFileName,
true)
== 0;


Loading…
Cancel
Save