Selaa lähdekoodia

Use ivy for plugin dependencies.

Depends-On: I34d7849a75cd4c7a91e04a9dad6f8073aa5a8f61
Change-Id: I65d96f91e1eb5ed7afb43dd41cd00531d809878d
Reviewed-on: http://gerrit.dmdirc.com/2736
Automatic-Compile: DMDirc Build Manager
Reviewed-by: Greg Holmes <greg@dmdirc.com>
tags/0.8
Chris Smith 10 vuotta sitten
vanhempi
commit
c2e94604e5

+ 1
- 0
.gitignore Näytä tiedosto

@@ -1,3 +1,4 @@
1 1
 /build
2 2
 /dist
3
+/lib
3 4
 *.iml

+ 22
- 0
build-ivy.xml Näytä tiedosto

@@ -0,0 +1,22 @@
1
+<?xml version="1.0" encoding="UTF-8"?>
2
+<project name="DMDirc-plugins-ivy" basedir="." xmlns:ivy="antlib:org.apache.ivy.ant">
3
+    <description>Ivy utilities for DMDirc plugins</description>
4
+
5
+    <property name="ivy.cache.ttl.default" value="7d"/>
6
+
7
+    <target name="-init-ivy" depends="-init-lib-directory">
8
+        <path id="ivy.classpath">
9
+           <fileset dir="etc/ivy" includes="ivy*.jar"/>
10
+        </path>
11
+
12
+        <available classname="org.apache.ivy.ant.IvyConfigure"
13
+              property="ivy.available" classpathref="ivy.classpath" />
14
+    </target>
15
+
16
+    <target name="init-dependencies" depends="-init-ivy" unless="ivy.done">
17
+        <taskdef resource="org/apache/ivy/ant/antlib.xml" uri="antlib:org.apache.ivy.ant" classpathref="ivy.classpath"/>
18
+        <ivy:settings file="etc/ivy/ivysettings.xml"/>
19
+        <ivy:retrieve symlink="true" pattern="lib/[conf]/[artifact].[ext]" sync="true" />
20
+        <property name="ivy.done" value="true"/>
21
+    </target>
22
+</project>

+ 48
- 36
build.xml Näytä tiedosto

@@ -9,34 +9,46 @@
9 9
     <property name="plugins.dist" location="dist"/>
10 10
     <property name="plugins.lib" location="lib"/>
11 11
 
12
+    <import file="build-ivy.xml" />
12 13
     <import file="build-tests.xml"/>
13 14
 
14
-    <path id="plugins.classpath">
15
-       <pathelement path="${plugins.dmdirc.build.dir}"/>
16
-       <fileset dir="${plugins.lib}" includes="*.jar"/>
17
-    </path>
18
-
19
-    <condition property="plugins.dmdirc.exists">
20
-       <available classname="com.dmdirc.Main" classpathref="plugins.classpath"/>
21
-    </condition>
22
-
23 15
     <condition property="plugins.need.antlib">
24 16
        <not>
25 17
            <typefound name="foreach"/>
26 18
        </not>
27 19
     </condition>
28 20
 
29
-    <target name="-init-taskdefs" if="plugins.need.antlib">
21
+    <target name="-init-lib-directory">
22
+      <mkdir dir="${plugins.lib}"/>
23
+    </target>
24
+
25
+    <target name="-init-taskdefs" depends="init-dependencies,-init-paths,-init-antlib,-init-git-describe">
26
+    </target>
27
+
28
+    <target name="-init-antlib" if="plugins.need.antlib">
30 29
         <taskdef resource="net/sf/antcontrib/antlib.xml" classpathref="plugins.classpath"/>
31 30
     </target>
31
+    
32
+    <target name="-init-git-describe">
33
+        <taskdef name="git-describe" classname="org.mdonoughe.JGitDescribeTask" classpathref="plugins.classpath"/>
34
+    </target>
32 35
 
33
-    <taskdef name="git-describe" classname="org.mdonoughe.JGitDescribeTask" classpathref="plugins.classpath"/>
36
+    <target name="-init-paths">
37
+      <path id="plugins.classpath">
38
+         <pathelement path="${plugins.dmdirc.build.dir}"/>
39
+         <fileset dir="${plugins.lib}" includes="**/*.jar"/>
40
+      </path>
41
+
42
+      <condition property="plugins.dmdirc.exists">
43
+         <available classname="com.dmdirc.Main" classpathref="plugins.classpath"/>
44
+      </condition>
45
+    </target>
34 46
 
35 47
     <target name="-check-dmdirc-jar" unless="plugins.dmdirc.exists">
36 48
        <fail>DMDirc class files not found. Please put DMDirc on the classpath or specify the 'plugins.dmdirc.build.dir' property.</fail>
37 49
     </target>
38 50
 
39
-    <target name="-init-compile" depends="-check-dmdirc-jar">
51
+    <target name="-init-compile" depends="init-dependencies,-init-paths,-check-dmdirc-jar">
40 52
        <mkdir dir="${plugins.build}"/>
41 53
        <mkdir dir="${plugins.build.classes}"/>
42 54
        <mkdir dir="${plugins.build.metadata}"/>
@@ -57,7 +69,7 @@
57 69
 
58 70
     <target name="jar" depends="-package,-add-libs"/>
59 71
 
60
-    <target name="-package" depends="-init-taskdefs, compile">
72
+    <target name="-package" depends="-init-taskdefs,compile">
61 73
         <for param="configfile">
62 74
             <fileset dir="${plugins.src}" includes="**/plugin.config"/>
63 75
             <sequential>
@@ -106,18 +118,18 @@ version:
106 118
 
107 119
     <target name="-add-libs">
108 120
         <jar destfile="${plugins.dist}/ui_swing.jar" update="true">
109
-            <zipfileset src="${plugins.lib}/miglayout-4.0-swing.jar" includes="net/miginfocom/layout/**,net/miginfocom/swing/**"/>
110
-            <zipfileset src="${plugins.lib}/menuscroller.jar" includes="darrylbu/util/**"/>
111
-            <zipfileset src="${plugins.lib}/jxlayer.jar" includes="org/jdesktop/jxlayer/**"/>
112
-            <zipfileset src="${plugins.lib}/cinch.jar" includes="*/**"/>
113
-            <zipfileset src="${plugins.lib}/cinchsupport.jar" includes="*/**"/>
121
+            <zipfileset src="${plugins.lib}/main/miglayout-swing.jar" includes="net/miginfocom/layout/**,net/miginfocom/swing/**"/>
122
+            <zipfileset src="${plugins.lib}/main/menuscroller.jar" includes="darrylbu/util/**"/>
123
+            <zipfileset src="${plugins.lib}/main/jxlayer.jar" includes="org/jdesktop/jxlayer/**"/>
124
+            <zipfileset src="${plugins.lib}/main/cinch.jar" includes="*/**"/>
125
+            <zipfileset src="${plugins.lib}/main/cinchsupport.jar" includes="*/**"/>
114 126
         </jar>
115 127
 
116 128
         <jar destfile="${plugins.dist}/ui_web.jar" update="true">
117
-            <zipfileset src="${plugins.lib}/commons-lang-2.4.jar" includes="org/apache/**" excludes="**/*.html"/>
118
-            <zipfileset src="${plugins.lib}/jetty-6.1.22.jar" includes="org/mortbay/**"/>
119
-            <zipfileset src="${plugins.lib}/jetty-util-6.1.22.jar" includes="org/mortbay/**"/>
120
-            <zipfileset src="${plugins.lib}/servlet-api-2.5-20081211.jar" includes="javax/servlet/**"/>
129
+            <zipfileset src="${plugins.lib}/main/commons-lang.jar" includes="org/apache/**" excludes="**/*.html"/>
130
+            <zipfileset src="${plugins.lib}/main/jetty.jar" includes="org/mortbay/**"/>
131
+            <zipfileset src="${plugins.lib}/main/jetty-util.jar" includes="org/mortbay/**"/>
132
+            <zipfileset src="${plugins.lib}/main/servlet-api.jar" includes="javax/servlet/**"/>
121 133
         </jar>
122 134
 
123 135
         <jar destfile="${plugins.dist}/parser_irc.jar" update="true">
@@ -128,32 +140,32 @@ version:
128 140
         </jar>
129 141
 
130 142
         <jar destfile="${plugins.dist}/parser_xmpp.jar" update="true">
131
-            <zipfileset src="${plugins.lib}/smack.jar" includes="org/**"/>
132
-            <zipfileset src="${plugins.lib}/smackx.jar" includes="org/** com/**"/>
143
+            <zipfileset src="${plugins.lib}/main/smack.jar" includes="org/**"/>
144
+            <zipfileset src="${plugins.lib}/main/smackx.jar" includes="org/** com/**"/>
133 145
         </jar>
134 146
 
135 147
        <jar destfile="${plugins.dist}/parser_msn.jar" update="true">
136
-            <zipfileset src="${plugins.lib}/jml-1.0b4-full.jar" includes="net/** org/**"/>
137
-            <zipfileset src="${plugins.lib}/httpcore.jar" includes="org/**"/>
148
+            <zipfileset src="${plugins.lib}/main/jml.jar" includes="net/** org/**"/>
149
+            <zipfileset src="${plugins.lib}/main/httpcore.jar" includes="org/**"/>
138 150
         </jar>
139 151
 
140 152
         <jar destfile="${plugins.dist}/windowflashing.jar" update="true">
141
-            <zipfileset src="${plugins.lib}/jna.jar" includes="com/**"/>
142
-            <zipfileset src="${plugins.lib}/platform.jar" includes="com/**"/>
153
+            <zipfileset src="${plugins.lib}/main/jna.jar" includes="com/**"/>
154
+            <zipfileset src="${plugins.lib}/main/platform.jar" includes="com/**"/>
143 155
         </jar>
144 156
 
145 157
         <jar destfile="${plugins.dist}/sessionlock.jar" update="true">
146
-            <zipfileset src="${plugins.lib}/jna.jar" includes="com/sun/jna/*"/>
147
-            <zipfileset src="${plugins.lib}/jna.jar" includes="com/sun/jna/ptr/*"/>
148
-            <zipfileset src="${plugins.lib}/jna.jar" includes="com/sun/jna/win32/**"/>
149
-            <zipfileset src="${plugins.lib}/jna.jar" includes="com/sun/jna/win32-amd64/**"/>
150
-            <zipfileset src="${plugins.lib}/jna.jar" includes="com/sun/jna/win32-x86/**"/>
151
-            <zipfileset src="${plugins.lib}/platform.jar" includes="com/sun/jna/platform/win32/**"/>
152
-            <zipfileset src="${plugins.lib}/JavaWindowsSessionLockSupport.jar" includes="com/greboid/**"/>
158
+            <zipfileset src="${plugins.lib}/main/jna.jar" includes="com/sun/jna/*"/>
159
+            <zipfileset src="${plugins.lib}/main/jna.jar" includes="com/sun/jna/ptr/*"/>
160
+            <zipfileset src="${plugins.lib}/main/jna.jar" includes="com/sun/jna/win32/**"/>
161
+            <zipfileset src="${plugins.lib}/main/jna.jar" includes="com/sun/jna/win32-amd64/**"/>
162
+            <zipfileset src="${plugins.lib}/main/jna.jar" includes="com/sun/jna/win32-x86/**"/>
163
+            <zipfileset src="${plugins.lib}/main/platform.jar" includes="com/sun/jna/platform/win32/**"/>
164
+            <zipfileset src="${plugins.lib}/main/locksupport.jar" includes="com/greboid/**"/>
153 165
         </jar>
154 166
 
155 167
         <jar destfile="${plugins.dist}/freedesktop_notifications.jar" update="true">
156
-            <zipfileset src="${plugins.lib}/commons-lang-2.4.jar" includes="org/apache/**" excludes="**/*.html"/>
168
+            <zipfileset src="${plugins.lib}/main/commons-lang.jar" includes="org/apache/**" excludes="**/*.html"/>
157 169
         </jar>
158 170
     </target>
159 171
 

BIN
etc/ivy/ivy-2.3.0.jar Näytä tiedosto


+ 26
- 0
etc/ivy/ivysettings.xml Näytä tiedosto

@@ -0,0 +1,26 @@
1
+<ivysettings>
2
+    <settings defaultResolver="default"/>
3
+    <resolvers>
4
+        <ibiblio name="default" m2compatible="true"/>
5
+
6
+        <ibiblio name="jgit" root="http://download.eclipse.org/jgit/maven" m2compatible="true"/>
7
+        <ibiblio name="dmdirc-thirdparty" root="http://nexus.dmdirc.com/nexus/content/repositories/thirdparty/" m2compatible="true"/>
8
+        <ibiblio name="jml" root="http://java-jml.sourceforge.net/maven" m2compatible="true"/>
9
+
10
+        <url name="ant-nsis">
11
+            <artifact pattern="http://cloud.github.com/downloads/dreese/nsis-ant/nsisant-[revision].jar"/>
12
+        </url>
13
+
14
+        <url name="jgit-describe">
15
+            <ivy pattern="file:///${basedir}/etc/ivy/[module]/ivy.xml"/>
16
+            <artifact pattern="http://shanemcc.github.com/jgit-describe/releases/jgit-describe-[revision].jar"/>
17
+        </url>
18
+    </resolvers>
19
+    <modules>
20
+        <module organisation="org.sourceforce.ant-nsis" name="ant-nsis" resolver="ant-nsis"/>
21
+        <module organisation="com.github.shanemcc" name="jgit-describe" resolver="jgit-describe"/>
22
+        <module organisation="org.eclipse.jgit" name="*" resolver="jgit"/>
23
+        <module organisation="com.greboid.libraries" name="*" resolver="dmdirc-thirdparty"/>
24
+        <module organisation="net.sourceforge.java-jml" name="*" resolver="jml"/>
25
+    </modules>
26
+</ivysettings>

+ 6
- 0
etc/ivy/jgit-describe/ivy.xml Näytä tiedosto

@@ -0,0 +1,6 @@
1
+<ivy-module version="2.0">
2
+    <info organisation="com.github.shanemcc" module="jgit-describe"/>
3
+    <dependencies>
4
+        <dependency org="org.eclipse.jgit" name="org.eclipse.jgit" rev="latest.integration" conf="default" />
5
+    </dependencies>
6
+</ivy-module>

+ 52
- 0
ivy.xml Näytä tiedosto

@@ -0,0 +1,52 @@
1
+<ivy-module version="2.0">
2
+    <info organisation="com.dmdirc" module="plugins"/>
3
+
4
+    <configurations>
5
+        <conf name="build" description="Everything needed to support the build process"/>
6
+        <conf name="main" description="Everything needed to compile the project separately"/>
7
+        <conf name="test" description="Everything needed to test the project"/>
8
+    </configurations>
9
+
10
+    <dependencies>
11
+        <dependency org="ant-contrib" name="ant-contrib" rev="1.0b3" conf="build->default" />
12
+        <dependency org="com.github.shanemcc" name="jgit-describe" rev="0.3" conf="build->default" />
13
+
14
+        <dependency org="org.slf4j" name="slf4j-api" rev="1.+" conf="main->default" />
15
+        <dependency org="com.github.peichhorn" name="lombok-pg" rev="latest.release" conf="main->default" />
16
+        <dependency org="org.igniterealtime.smack" name="smack" rev="3.+" conf="main->default" />
17
+        <dependency org="org.igniterealtime.smack" name="smackx" rev="3.+" conf="main->default" />
18
+        <dependency org="com.miglayout" name="miglayout-swing" rev="4.+" conf="main->default" />
19
+        <dependency org="org.swinglabs" name="jxlayer" rev="3.+" conf="main->default" />
20
+        <dependency org="net.java.dev.jna" name="jna" rev="3.+" conf="main->default" />
21
+        <dependency org="net.java.dev.jna" name="platform" rev="3.+" conf="main->default" />
22
+        <dependency org="com.greboid.libraries" name="cinch" rev="latest.release" conf="main->default" />
23
+        <dependency org="com.greboid.libraries" name="cinchsupport" rev="latest.release" conf="main->default" />
24
+        <dependency org="com.greboid.libraries" name="locksupport" rev="latest.release" conf="main->default" />
25
+        <dependency org="com.greboid.libraries" name="menuscroller" rev="latest.release" conf="main->default" />
26
+        <dependency org="org.mortbay.jetty" name="jetty" rev="6.+" conf="main->default" />
27
+        <dependency org="net.sourceforge.java-jml" name="jml" rev="1.+" conf="main->default" />
28
+        <dependency org="commons-lang" name="commons-lang" rev="latest.release" conf="main->default" />
29
+
30
+<!--
31
+        <dependency org="org.sourceforce.ant-nsis" name="ant-nsis" rev="1.3" conf="build->default" />
32
+        <dependency org="com.github.shanemcc" name="jgit-describe" rev="0.3" conf="build->default" />
33
+        <dependency org="net.sourceforge.fikin-ant-tasks" name="ant-fikin" rev="1.7.3" conf="build->default" />
34
+
35
+        <dependency org="org.slf4j" name="slf4j-api" rev="1.+" conf="main->default" />
36
+        <dependency org="ch.qos.logback" name="logback-classic" rev="1.+" conf="test->default" />
37
+
38
+        <dependency org="com.squareup.dagger" name="dagger" rev="1.1.+" conf="main->default" />
39
+        <dependency org="com.squareup.dagger" name="dagger-compiler" rev="1.1.+" conf="main->default" />
40
+
41
+        <dependency org="junit" name="junit" rev="4.+" conf="test->default" />
42
+        <dependency org="org.mockito" name="mockito-all" rev="1.+" conf="test->default" />
43
+        <dependency org="com.cenqua.clover" name="clover" rev="3.+" conf="test->default" />
44
+
45
+        <dependency org="pmd" name="pmd" rev="4.+" conf="analyse->default" />
46
+        <dependency org="com.puppycrawl.tools" name="checkstyle" rev="5.+" conf="analyse->default" />
47
+        <dependency org="net.sourceforge.findbugs" name="findbugs-ant" rev="1.+" conf="analyse->default" />
48
+
49
+        <exclude org="ant" module="ant"/>
50
+-->
51
+    </dependencies>
52
+</ivy-module>

BIN
lib/JavaWindowsSessionLockSupport.jar Näytä tiedosto


BIN
lib/ant-contrib-1.0b3.jar Näytä tiedosto


BIN
lib/cinch.jar Näytä tiedosto


BIN
lib/cinchsupport.jar Näytä tiedosto


BIN
lib/commons-codec-1.3.jar Näytä tiedosto


BIN
lib/commons-lang-2.4.jar Näytä tiedosto


BIN
lib/httpcore.jar Näytä tiedosto


BIN
lib/jetty-6.1.22.jar Näytä tiedosto


BIN
lib/jetty-util-6.1.22.jar Näytä tiedosto


BIN
lib/jgit-describe-0.2.jar Näytä tiedosto


BIN
lib/jml-1.0b4-full.jar Näytä tiedosto


BIN
lib/jna.jar Näytä tiedosto


BIN
lib/jxlayer.jar Näytä tiedosto


BIN
lib/lombok-pg-0.11.3.jar Näytä tiedosto


BIN
lib/menuscroller.jar Näytä tiedosto


BIN
lib/miglayout-4.0-swing.jar Näytä tiedosto


BIN
lib/org.eclipse.jgit-1.3.0-SNAPSHOT.jar Näytä tiedosto


BIN
lib/platform.jar Näytä tiedosto


BIN
lib/servlet-api-2.5-20081211.jar Näytä tiedosto


BIN
lib/signpost-core-1.1-SNAPSHOT.jar Näytä tiedosto


BIN
lib/slf4j-api-1.6.4.jar Näytä tiedosto


BIN
lib/smack.jar Näytä tiedosto


BIN
lib/smackx.jar Näytä tiedosto


+ 2
- 1
src/com/dmdirc/addons/parser_xmpp/FixedXmppConnection.java Näytä tiedosto

@@ -26,6 +26,7 @@ import java.lang.reflect.Field;
26 26
 import java.util.HashSet;
27 27
 import java.util.Set;
28 28
 
29
+import org.jivesoftware.smack.Connection;
29 30
 import org.jivesoftware.smack.ConnectionConfiguration;
30 31
 import org.jivesoftware.smack.ConnectionCreationListener;
31 32
 import org.jivesoftware.smack.XMPPConnection;
@@ -82,7 +83,7 @@ public class FixedXmppConnection extends XMPPConnection
82 83
     /** {@inheritDoc} */
83 84
     @Override
84 85
     @SuppressWarnings("ResultOfObjectAllocationIgnored")
85
-    public void connectionCreated(final XMPPConnection xmppc) {
86
+    public void connectionCreated(final Connection xmppc) {
86 87
         // Creating this shoves itself into a static map. Other listeners
87 88
         // depend on this entry existing in the map before they're called.
88 89
         new ServiceDiscoveryManager(xmppc);

Loading…
Peruuta
Tallenna