Skip to content

Commit be4bcd5

Browse files
GH-4474: Publish classes attachment from war modules (#4475)
2 parents 7cda119 + 2c2ced1 commit be4bcd5

File tree

8 files changed

+29
-227
lines changed

8 files changed

+29
-227
lines changed

compliance/repository/pom.xml

Lines changed: 11 additions & 51 deletions
Original file line numberDiff line numberDiff line change
@@ -14,59 +14,12 @@
1414
<testserver.webapp.dir>${project.build.directory}/rdf4j-server</testserver.webapp.dir>
1515
</properties>
1616
<dependencies>
17-
<dependency>
18-
<groupId>${project.groupId}</groupId>
19-
<artifactId>rdf4j-repository-http</artifactId>
20-
<version>${project.version}</version>
21-
</dependency>
22-
<dependency>
23-
<groupId>${project.groupId}</groupId>
24-
<artifactId>rdf4j-repository-sparql</artifactId>
25-
<version>${project.version}</version>
26-
</dependency>
27-
<dependency>
28-
<groupId>${project.groupId}</groupId>
29-
<artifactId>rdf4j-repository-sail</artifactId>
30-
<version>${project.version}</version>
31-
</dependency>
32-
<dependency>
33-
<groupId>${project.groupId}</groupId>
34-
<artifactId>rdf4j-repository-manager</artifactId>
35-
<version>${project.version}</version>
36-
</dependency>
37-
<dependency>
38-
<groupId>${project.groupId}</groupId>
39-
<artifactId>rdf4j-sail-memory</artifactId>
40-
<version>${project.version}</version>
41-
</dependency>
42-
<dependency>
43-
<groupId>${project.groupId}</groupId>
44-
<artifactId>rdf4j-sail-inferencer</artifactId>
45-
<version>${project.version}</version>
46-
</dependency>
47-
<dependency>
48-
<groupId>${project.groupId}</groupId>
49-
<artifactId>rdf4j-http-protocol</artifactId>
50-
<version>${project.version}</version>
51-
</dependency>
5217
<dependency>
5318
<groupId>${project.groupId}</groupId>
5419
<artifactId>rdf4j-repository-testsuite</artifactId>
5520
<version>${project.version}</version>
5621
<scope>test</scope>
5722
</dependency>
58-
<dependency>
59-
<groupId>${project.groupId}</groupId>
60-
<artifactId>rdf4j-rio-turtle</artifactId>
61-
<version>${project.version}</version>
62-
<scope>test</scope>
63-
</dependency>
64-
<dependency>
65-
<groupId>${project.groupId}</groupId>
66-
<artifactId>rdf4j-rio-nquads</artifactId>
67-
<version>${project.version}</version>
68-
<scope>test</scope>
69-
</dependency>
7023
<dependency>
7124
<groupId>org.eclipse.jetty</groupId>
7225
<artifactId>jetty-server</artifactId>
@@ -78,9 +31,18 @@
7831
<scope>test</scope>
7932
</dependency>
8033
<dependency>
81-
<groupId>org.slf4j</groupId>
82-
<artifactId>jcl-over-slf4j</artifactId>
34+
<groupId>${project.groupId}</groupId>
35+
<artifactId>rdf4j-http-server</artifactId>
36+
<version>${project.version}</version>
37+
<classifier>classes</classifier>
8338
<scope>test</scope>
39+
<exclusions>
40+
<!-- FIXME: This exclusion is required because Spring dependency management is done in rdf4j-tools module -->
41+
<exclusion>
42+
<groupId>org.springframework</groupId>
43+
<artifactId>spring-jcl</artifactId>
44+
</exclusion>
45+
</exclusions>
8446
</dependency>
8547
<dependency>
8648
<groupId>${project.groupId}</groupId>
@@ -99,8 +61,6 @@
9961
<groupId>org.apache.maven.plugins</groupId>
10062
<artifactId>maven-war-plugin</artifactId>
10163
<configuration>
102-
<warName>rdf4j-server</warName>
103-
<archiveClasses>true</archiveClasses>
10464
<webappDirectory>${testserver.webapp.dir}</webappDirectory>
10565
</configuration>
10666
</plugin>

compliance/repository/src/test/java/org/eclipse/rdf4j/repository/http/HTTPMemServer.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ public HTTPMemServer() throws IOException {
6666
WebAppContext webapp = new WebAppContext();
6767
webapp.setContextPath(RDF4J_CONTEXT);
6868
webapp.setWar(webappDir);
69+
webapp.getServerClasspathPattern().add("org.slf4j.", "ch.qos.logback.");
6970
jetty.setHandler(webapp);
7071

7172
manager = RemoteRepositoryManager.getInstance(SERVER_URL);

compliance/sparql/pom.xml

Lines changed: 12 additions & 174 deletions
Original file line numberDiff line numberDiff line change
@@ -16,82 +16,17 @@
1616
<dependencies>
1717
<dependency>
1818
<groupId>${project.groupId}</groupId>
19-
<artifactId>rdf4j-model</artifactId>
20-
<version>${project.version}</version>
21-
</dependency>
22-
<dependency>
23-
<groupId>${project.groupId}</groupId>
24-
<artifactId>rdf4j-sparql-testsuite</artifactId>
25-
<version>${project.version}</version>
26-
</dependency>
27-
<dependency>
28-
<groupId>${project.groupId}</groupId>
29-
<artifactId>rdf4j-rio-api</artifactId>
30-
<version>${project.version}</version>
31-
</dependency>
32-
<dependency>
33-
<groupId>${project.groupId}</groupId>
34-
<artifactId>rdf4j-rio-turtle</artifactId>
35-
<version>${project.version}</version>
36-
<scope>runtime</scope>
37-
</dependency>
38-
<dependency>
39-
<groupId>${project.groupId}</groupId>
40-
<artifactId>rdf4j-rio-rdfxml</artifactId>
41-
<version>${project.version}</version>
42-
<scope>runtime</scope>
43-
</dependency>
44-
<dependency>
45-
<groupId>${project.groupId}</groupId>
46-
<artifactId>rdf4j-query</artifactId>
47-
<version>${project.version}</version>
48-
</dependency>
49-
<dependency>
50-
<groupId>${project.groupId}</groupId>
51-
<artifactId>rdf4j-queryresultio-api</artifactId>
52-
<version>${project.version}</version>
53-
</dependency>
54-
<dependency>
55-
<groupId>${project.groupId}</groupId>
56-
<artifactId>rdf4j-queryresultio-sparqlxml</artifactId>
57-
<version>${project.version}</version>
58-
<scope>runtime</scope>
59-
</dependency>
60-
<dependency>
61-
<groupId>${project.groupId}</groupId>
62-
<artifactId>rdf4j-queryparser-api</artifactId>
63-
<version>${project.version}</version>
64-
</dependency>
65-
<dependency>
66-
<groupId>${project.groupId}</groupId>
67-
<artifactId>rdf4j-queryparser-sparql</artifactId>
68-
<version>${project.version}</version>
69-
<scope>runtime</scope>
70-
</dependency>
71-
<dependency>
72-
<groupId>${project.groupId}</groupId>
73-
<artifactId>rdf4j-repository-api</artifactId>
74-
<version>${project.version}</version>
75-
</dependency>
76-
<dependency>
77-
<groupId>${project.groupId}</groupId>
78-
<artifactId>rdf4j-repository-dataset</artifactId>
79-
<version>${project.version}</version>
80-
</dependency>
81-
<dependency>
82-
<groupId>${project.groupId}</groupId>
83-
<artifactId>rdf4j-repository-contextaware</artifactId>
84-
<version>${project.version}</version>
85-
</dependency>
86-
<dependency>
87-
<groupId>${project.groupId}</groupId>
88-
<artifactId>rdf4j-repository-sail</artifactId>
89-
<version>${project.version}</version>
90-
</dependency>
91-
<dependency>
92-
<groupId>${project.groupId}</groupId>
93-
<artifactId>rdf4j-sail-api</artifactId>
19+
<artifactId>rdf4j-http-server</artifactId>
9420
<version>${project.version}</version>
21+
<classifier>classes</classifier>
22+
<scope>test</scope>
23+
<exclusions>
24+
<!-- FIXME: This exclusion is required because Spring dependency management is done in rdf4j-tools module -->
25+
<exclusion>
26+
<groupId>org.springframework</groupId>
27+
<artifactId>spring-jcl</artifactId>
28+
</exclusion>
29+
</exclusions>
9530
</dependency>
9631
<dependency>
9732
<groupId>${project.groupId}</groupId>
@@ -101,101 +36,9 @@
10136
</dependency>
10237
<dependency>
10338
<groupId>${project.groupId}</groupId>
104-
<artifactId>rdf4j-sail-memory</artifactId>
105-
<version>${project.version}</version>
106-
</dependency>
107-
<dependency>
108-
<groupId>${project.groupId}</groupId>
109-
<artifactId>rdf4j-sail-nativerdf</artifactId>
110-
<version>${project.version}</version>
111-
</dependency>
112-
<dependency>
113-
<groupId>${project.groupId}</groupId>
114-
<artifactId>rdf4j-sail-lmdb</artifactId>
115-
<version>${project.version}</version>
116-
</dependency>
117-
<dependency>
118-
<groupId>org.lwjgl</groupId>
119-
<artifactId>lwjgl-lmdb</artifactId>
120-
<classifier>natives-linux</classifier>
121-
<version>${lwjgl.version}</version>
122-
<scope>runtime</scope>
123-
<optional>true</optional>
124-
</dependency>
125-
<dependency>
126-
<groupId>org.lwjgl</groupId>
127-
<artifactId>lwjgl-lmdb</artifactId>
128-
<classifier>natives-macos-arm64</classifier>
129-
<version>${lwjgl.version}</version>
130-
<scope>runtime</scope>
131-
<optional>true</optional>
132-
</dependency>
133-
<dependency>
134-
<groupId>org.lwjgl</groupId>
135-
<artifactId>lwjgl-lmdb</artifactId>
136-
<classifier>natives-macos</classifier>
137-
<version>${lwjgl.version}</version>
138-
<scope>runtime</scope>
139-
<optional>true</optional>
140-
</dependency>
141-
<dependency>
142-
<groupId>org.lwjgl</groupId>
143-
<artifactId>lwjgl-lmdb</artifactId>
144-
<classifier>natives-windows</classifier>
145-
<version>${lwjgl.version}</version>
146-
<scope>runtime</scope>
147-
<optional>true</optional>
148-
</dependency>
149-
<dependency>
150-
<groupId>org.lwjgl</groupId>
151-
<artifactId>lwjgl</artifactId>
152-
<classifier>natives-linux</classifier>
153-
<version>${lwjgl.version}</version>
154-
<scope>runtime</scope>
155-
<optional>true</optional>
156-
</dependency>
157-
<dependency>
158-
<groupId>org.lwjgl</groupId>
159-
<artifactId>lwjgl</artifactId>
160-
<classifier>natives-macos</classifier>
161-
<version>${lwjgl.version}</version>
162-
<scope>runtime</scope>
163-
<optional>true</optional>
164-
</dependency>
165-
<dependency>
166-
<groupId>org.lwjgl</groupId>
167-
<artifactId>lwjgl</artifactId>
168-
<classifier>natives-macos-arm64</classifier>
169-
<version>${lwjgl.version}</version>
170-
<scope>runtime</scope>
171-
<optional>true</optional>
172-
</dependency>
173-
<dependency>
174-
<groupId>org.lwjgl</groupId>
175-
<artifactId>lwjgl</artifactId>
176-
<classifier>natives-windows</classifier>
177-
<version>${lwjgl.version}</version>
178-
<scope>runtime</scope>
179-
<optional>true</optional>
180-
</dependency>
181-
<dependency>
182-
<groupId>${project.groupId}</groupId>
183-
<artifactId>rdf4j-tools-federation</artifactId>
184-
<version>${project.version}</version>
185-
</dependency>
186-
<dependency>
187-
<groupId>org.slf4j</groupId>
188-
<artifactId>slf4j-api</artifactId>
189-
</dependency>
190-
<dependency>
191-
<groupId>${project.groupId}</groupId>
192-
<artifactId>rdf4j-http-protocol</artifactId>
193-
<version>${project.version}</version>
194-
</dependency>
195-
<dependency>
196-
<groupId>${project.groupId}</groupId>
197-
<artifactId>rdf4j-repository-manager</artifactId>
39+
<artifactId>rdf4j-sparql-testsuite</artifactId>
19840
<version>${project.version}</version>
41+
<scope>test</scope>
19942
</dependency>
20043
<dependency>
20144
<groupId>org.eclipse.jetty</groupId>
@@ -207,11 +50,6 @@
20750
<artifactId>jetty-webapp</artifactId>
20851
<scope>test</scope>
20952
</dependency>
210-
<dependency>
211-
<groupId>org.slf4j</groupId>
212-
<artifactId>jcl-over-slf4j</artifactId>
213-
<scope>test</scope>
214-
</dependency>
21553
</dependencies>
21654
<build>
21755
<plugins>

compliance/sparql/src/test/java/org/eclipse/rdf4j/query/parser/sparql/SPARQLEmbeddedServer.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -64,6 +64,7 @@ public SPARQLEmbeddedServer(List<String> repositoryIds) throws IOException {
6464
jetty = new Server(PORT);
6565

6666
WebAppContext webapp = new WebAppContext();
67+
webapp.getServerClasspathPattern().add("org.slf4j.", "ch.qos.logback.");
6768
webapp.setContextPath(SERVER_CONTEXT);
6869
// warPath configured in pom.xml maven-war-plugin configuration
6970
webapp.setWar(webappDir);

tools/federation/src/test/java/org/eclipse/rdf4j/federated/server/EmbeddedServer.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ public EmbeddedServer(String host, int port, String contextPath, String warPath)
3939
jetty.addConnector(conn);
4040

4141
WebAppContext webapp = new WebAppContext();
42+
webapp.getServerClasspathPattern().add("org.slf4j.", "ch.qos.logback.");
4243
webapp.setContextPath(contextPath);
4344
webapp.setTempDirectory(new File("temp/webapp/"));
4445
webapp.setWar(warPath);

tools/server/pom.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -109,6 +109,7 @@
109109
<configuration>
110110
<warName>rdf4j-server</warName>
111111
<archiveClasses>true</archiveClasses>
112+
<attachClasses>true</attachClasses>
112113
<webappDirectory>${testserver.webapp.dir}</webappDirectory>
113114
</configuration>
114115
</plugin>

tools/server/src/test/java/org/eclipse/rdf4j/http/server/TestServer.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -69,8 +69,7 @@ public TestServer() throws IOException {
6969
jetty.addConnector(conn);
7070

7171
WebAppContext webapp = new WebAppContext();
72-
webapp.addSystemClass("org.slf4j.");
73-
webapp.addSystemClass("ch.qos.logback.");
72+
webapp.getServerClasspathPattern().add("org.slf4j.", "ch.qos.logback.");
7473
webapp.setContextPath(RDF4J_CONTEXT);
7574
// warPath configured in pom.xml maven-war-plugin configuration
7675
webapp.setWar("./target/rdf4j-server");

tools/workbench/pom.xml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -63,6 +63,7 @@
6363
<configuration>
6464
<warName>rdf4j-workbench</warName>
6565
<archiveClasses>true</archiveClasses>
66+
<attachClasses>true</attachClasses>
6667
</configuration>
6768
</plugin>
6869
<plugin>

0 commit comments

Comments
 (0)