aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorReinier Zwitserloot <reinier@tipit.to>2009-11-27 12:10:10 +0100
committerReinier Zwitserloot <reinier@tipit.to>2009-11-27 12:10:10 +0100
commit44d6a6b6627c23ac66920ae6dc1d709f26de7e3f (patch)
tree323796cc7d70aa4f65f26e5b8e512330636ba6e5
parent5ab3615b3d1bf14480c0626883c90145f6a72c63 (diff)
downloadlombok-44d6a6b6627c23ac66920ae6dc1d709f26de7e3f.tar.gz
lombok-44d6a6b6627c23ac66920ae6dc1d709f26de7e3f.tar.bz2
lombok-44d6a6b6627c23ac66920ae6dc1d709f26de7e3f.zip
Solved the problem in the two-phase compile (some of lombok is JVM1.5, other bits are JVM1.6) being interdependent and causing implicit compilation warnings.
Also added source="1.x" to all ant file javac targets, as apparently this needs to be there when compiling with JDK7.
-rw-r--r--build.xml2
-rw-r--r--buildScripts/compile.ant.xml10
-rw-r--r--buildScripts/website.ant.xml2
-rw-r--r--src/installer/lombok/installer/Installer.java25
4 files changed, 27 insertions, 12 deletions
diff --git a/build.xml b/build.xml
index a2571d54..5fead285 100644
--- a/build.xml
+++ b/build.xml
@@ -31,7 +31,7 @@ the common tasks and can be called on to run the main aspects of all the sub-scr
<target name="version" description="Shows the version number" unless="lombok.version">
<mkdir dir="build/lombok" />
- <javac includeDestClasses="false" srcdir="src/core" debug="on" destdir="build/lombok" target="1.5" includes="lombok/core/Version.java" />
+ <javac includeDestClasses="false" srcdir="src/core" debug="on" destdir="build/lombok" source="1.5" target="1.5" includes="lombok/core/Version.java" />
<java
classname="lombok.core.Version"
classpath="build/lombok"
diff --git a/buildScripts/compile.ant.xml b/buildScripts/compile.ant.xml
index 043b67c0..7b48f759 100644
--- a/buildScripts/compile.ant.xml
+++ b/buildScripts/compile.ant.xml
@@ -108,21 +108,21 @@ lombok code including the various agents.
javac 1.5, partly because they completely rewrote large swaths of javac,
and partly because our injection mechanism (annotations) doesn't work very
well on javac 1.5, hence, when using javac, we do demand you're on 1.6. -->
- <javac debug="on" destdir="build/lombok" target="1.5">
+ <echo>s1</echo>
+ <javac debug="on" destdir="build/lombok" target="1.5" source="1.5">
<src path="src/core" />
<src path="src/installer" />
<src path="src/eclipseAgent" />
- <src path="src/delombok" />
<exclude name="lombok/javac/**" />
<classpath refid="deps.path" />
<classpath refid="libs.path" />
</javac>
- <javac debug="on" destdir="build/lombok" target="1.6">
+ <echo>s2</echo>
+ <javac debug="on" destdir="build/lombok" target="1.6" source="1.6">
<src path="src/core" />
- <src path="src/installer" />
- <src path="src/eclipseAgent" />
<src path="src/delombok" />
<include name="lombok/javac/**" />
+ <classpath location="build/lombok" />
<classpath refid="deps.path" />
<classpath refid="libs.path" />
</javac>
diff --git a/buildScripts/website.ant.xml b/buildScripts/website.ant.xml
index 30d0b29b..50781988 100644
--- a/buildScripts/website.ant.xml
+++ b/buildScripts/website.ant.xml
@@ -68,7 +68,7 @@ such as converting the changelog into HTML, and creating javadoc.
<src path="buildScripts/src" />
<include name="lombok/website/WebUpToDate.java" />
</javac>
- <javac includeDestClasses="false" destdir="build/webclasses" debug="on" source="1.5">
+ <javac includeDestClasses="false" destdir="build/webclasses" debug="on" source="1.5" target="1.5">
<classpath refid="buildScripts.deps.path" />
<src path="buildScripts/src" />
<include name="lombok/website/CompileChangelog.java" />
diff --git a/src/installer/lombok/installer/Installer.java b/src/installer/lombok/installer/Installer.java
index a823dd69..d6f1add0 100644
--- a/src/installer/lombok/installer/Installer.java
+++ b/src/installer/lombok/installer/Installer.java
@@ -43,7 +43,9 @@ import java.io.FilenameFilter;
import java.net.URI;
import java.util.ArrayList;
import java.util.Collections;
+import java.util.HashMap;
import java.util.List;
+import java.util.Map;
import java.util.concurrent.atomic.AtomicReference;
import javax.swing.Box;
@@ -64,7 +66,6 @@ import javax.swing.UIManager;
import javax.swing.filechooser.FileFilter;
import lombok.core.Version;
-import lombok.delombok.Delombok;
import lombok.installer.EclipseFinder.OS;
import lombok.installer.EclipseLocation.InstallException;
import lombok.installer.EclipseLocation.NotAnEclipseException;
@@ -95,11 +96,25 @@ public class Installer {
private JLabel uninstallPlaceholder;
private JButton installButton;
+ private static final Map<String, String> APPS;
+ static {
+ Map<String, String> m = new HashMap<String, String>();
+ m.put("delombok", "lombok.delombok.Delombok");
+ APPS = Collections.unmodifiableMap(m);
+ }
+
public static void main(String[] args) {
- if (args.length > 0 && args[0].equals("delombok")) {
- String[] newArgs = new String[args.length-1];
- System.arraycopy(args, 1, newArgs, 0, newArgs.length);
- Delombok.main(newArgs);
+ if (args.length > 0) {
+ String className = APPS.get(args[0]);
+ if (className != null) {
+ String[] newArgs = new String[args.length-1];
+ System.arraycopy(args, 1, newArgs, 0, newArgs.length);
+ try {
+ Class.forName(className).getMethod("main", String[].class).invoke(newArgs);
+ } catch (Exception e) {
+ System.err.println("Lombok bug: Can't find application main class: " + className);
+ }
+ }
return;
}
if (args.length > 0 && (args[0].equals("install") || args[0].equals("uninstall"))) {