JAR detection was not working for computed paths.
authorJesse Glick <jglick@netbeans.org>
Mon, 01 Aug 2011 09:45:14 -0400
changeset 17549e06eb6bd87a6
parent 17544 043f8525c982
child 17550 0bcb85d62cf5
JAR detection was not working for computed paths.
autoproject.java/manifest.mf
autoproject.java/src/org/netbeans/modules/autoproject/java/BuildSniffer.java
autoproject.java/test/unit/src/org/netbeans/modules/autoproject/java/BuildSnifferTest.java
     1.1 --- a/autoproject.java/manifest.mf	Wed Jul 27 18:05:33 2011 -0400
     1.2 +++ b/autoproject.java/manifest.mf	Mon Aug 01 09:45:14 2011 -0400
     1.3 @@ -3,5 +3,5 @@
     1.4  OpenIDE-Module: org.netbeans.modules.autoproject.java
     1.5  OpenIDE-Module-Layer: org/netbeans/modules/autoproject/java/layer.xml
     1.6  OpenIDE-Module-Localizing-Bundle: org/netbeans/modules/autoproject/java/Bundle.properties
     1.7 -OpenIDE-Module-Specification-Version: 1.35
     1.8 +OpenIDE-Module-Specification-Version: 1.36
     1.9  
     2.1 --- a/autoproject.java/src/org/netbeans/modules/autoproject/java/BuildSniffer.java	Wed Jul 27 18:05:33 2011 -0400
     2.2 +++ b/autoproject.java/src/org/netbeans/modules/autoproject/java/BuildSniffer.java	Mon Aug 01 09:45:14 2011 -0400
     2.3 @@ -450,17 +450,17 @@
     2.4          if (jar == null) {
     2.5              return;
     2.6          }
     2.7 -        String key = resolve(event, jar) + JavaCacheConstants.JAR;
     2.8 +        String key = resolve(event, event.evaluate(jar)) + JavaCacheConstants.JAR;
     2.9          List<String> basedirs = new ArrayList<String>();
    2.10          String basedir = event.getTaskStructure().getAttribute("basedir");
    2.11          if (basedir != null) {
    2.12 -            basedirs.add(resolve(event, basedir).getAbsolutePath());
    2.13 +            basedirs.add(resolve(event, event.evaluate(basedir)).getAbsolutePath());
    2.14          }
    2.15          for (TaskStructure child : event.getTaskStructure().getChildren()) {
    2.16              if (child.getName().equals("fileset")) {
    2.17                  basedir = child.getAttribute("dir");
    2.18                  if (basedir != null) {
    2.19 -                    basedirs.add(resolve(event, basedir).getAbsolutePath());
    2.20 +                    basedirs.add(resolve(event, event.evaluate(basedir)).getAbsolutePath());
    2.21                  }
    2.22              }
    2.23          }
     3.1 --- a/autoproject.java/test/unit/src/org/netbeans/modules/autoproject/java/BuildSnifferTest.java	Wed Jul 27 18:05:33 2011 -0400
     3.2 +++ b/autoproject.java/test/unit/src/org/netbeans/modules/autoproject/java/BuildSnifferTest.java	Mon Aug 01 09:45:14 2011 -0400
     3.3 @@ -268,6 +268,22 @@
     3.4          assertEquals(prefix + "c" + File.pathSeparator + prefix + "s", Cache.get(prefix + "c4.jar" + JavaCacheConstants.JAR));
     3.5      }
     3.6  
     3.7 +    public void testComputedJar() throws Exception {
     3.8 +        write("build.xml",
     3.9 +                "<project default='c'>\n" +
    3.10 +                " <target name='c'>\n" +
    3.11 +                "  <mkdir dir='s'/>\n" +
    3.12 +                "  <property name='b' location='b'/>\n" +
    3.13 +                "  <mkdir dir='${b}/c'/>\n" +
    3.14 +                "  <javac srcdir='s' destdir='${b}/c'/>\n" +
    3.15 +                "  <jar destfile='${b}/c.jar' basedir='${b}/c'/>\n" +
    3.16 +                " </target>\n" +
    3.17 +                "</project>\n");
    3.18 +        runAnt();
    3.19 +        assertEquals(prefix + "b" + File.separator + "c", Cache.get(prefix + "s" + JavaCacheConstants.BINARY));
    3.20 +        assertEquals(prefix + "b" + File.separator + "c", Cache.get(prefix + "b" + File.separator + "c.jar" + JavaCacheConstants.JAR));
    3.21 +    }
    3.22 +
    3.23      public void testIncludesExcludes() throws Exception {
    3.24          assertIncludesExcludes("", null, null);
    3.25          assertIncludesExcludes("includes='dir1/,dir/2/' excludes='dir3/,dir/4/'", "dir1/,dir/2/", "dir3/,dir/4/");