JAR detection was not working for computed paths.
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/");