Skip to content

Commit 4bc6f30

Browse files
authored
[GH-2441] Fix failed example project build (#2498)
1 parent e65c67f commit 4bc6f30

File tree

3 files changed

+117
-39
lines changed

3 files changed

+117
-39
lines changed

.github/workflows/example.yml

Lines changed: 43 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -44,18 +44,41 @@ jobs:
4444
fail-fast: false
4545
matrix:
4646
include:
47+
- spark: 4.0.1
48+
spark-compat: '4.0'
49+
sedona: 1.8.0
50+
hadoop: 3.4.2
4751
- spark: 3.5.0
4852
spark-compat: '3.5'
49-
sedona: 1.5.1
53+
sedona: 1.8.0
54+
hadoop: 3.3.4
5055
- spark: 3.4.2
5156
spark-compat: '3.4'
52-
sedona: 1.5.1
57+
sedona: 1.8.0
58+
hadoop: 3.3.4
59+
env:
60+
JAVA_TOOL_OPTIONS: >-
61+
-XX:+IgnoreUnrecognizedVMOptions
62+
--add-opens=java.base/java.lang=ALL-UNNAMED
63+
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED
64+
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
65+
--add-opens=java.base/java.io=ALL-UNNAMED
66+
--add-opens=java.base/java.net=ALL-UNNAMED
67+
--add-opens=java.base/java.nio=ALL-UNNAMED
68+
--add-opens=java.base/java.util=ALL-UNNAMED
69+
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
70+
--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
71+
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
72+
--add-opens=java.base/sun.nio.cs=ALL-UNNAMED
73+
--add-opens=java.base/sun.security.action=ALL-UNNAMED
74+
--add-opens=java.base/sun.util.calendar=ALL-UNNAMED
75+
-Djdk.reflect.useDirectMethodHandle=false
5376
steps:
5477
- uses: actions/checkout@v4
5578
- uses: actions/setup-java@v4
5679
with:
5780
distribution: 'zulu'
58-
java-version: '11'
81+
java-version: '17'
5982
- run: sudo apt-get remove scala-library scala
6083
- run: sudo wget www.scala-lang.org/files/archive/scala-2.12.11.deb
6184
- run: sudo dpkg -i scala-2.12.11.deb
@@ -82,5 +105,20 @@ jobs:
82105
SPARK_LOCAL_IP: 127.0.0.1
83106
SPARK_COMPAT_VERSION: ${{ matrix.spark-compat }}
84107
SEDONA_VERSION: ${{ matrix.sedona }}
85-
run: (cd examples/spark-sql;mvn clean install -Dspark.version=${SPARK_VERSION} -Dspark.compat.version=${SPARK_COMPAT_VERSION} -Dsedona.version=${SEDONA_VERSION};java -jar target/sedona-spark-example-1.6.0.jar)
86-
- run: (cd examples/flink-sql;mvn clean install;java -jar target/sedona-flink-example-1.6.0.jar)
108+
HADOOP_VERSION: ${{ matrix.hadoop }}
109+
run: |
110+
cd examples/spark-sql
111+
mvn versions:set -DnewVersion=${SEDONA_VERSION} -DgenerateBackupPoms=false
112+
mvn clean install \
113+
-Dspark.version=${SPARK_VERSION} \
114+
-Dspark.compat.version=${SPARK_COMPAT_VERSION} \
115+
-Dsedona.version=${SEDONA_VERSION} \
116+
-Dhadoop.version=${HADOOP_VERSION}
117+
java -jar target/sedona-spark-example-${SEDONA_VERSION}.jar
118+
- env:
119+
SEDONA_VERSION: ${{ matrix.sedona }}
120+
run: |
121+
cd examples/flink-sql
122+
mvn versions:set -DnewVersion=${SEDONA_VERSION} -DgenerateBackupPoms=false
123+
mvn clean install
124+
java -jar target/sedona-flink-example-${SEDONA_VERSION}.jar

examples/flink-sql/pom.xml

Lines changed: 26 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
<groupId>org.apache.sedona</groupId>
2525
<artifactId>sedona-flink-example</artifactId>
26-
<version>1.6.0</version>
26+
<version>1.8.0</version>
2727
<name>Sedona : Examples : Flink</name>
2828
<packaging>jar</packaging>
2929

@@ -33,8 +33,27 @@
3333
<flink.version>1.19.0</flink.version>
3434
<flink.scope>compile</flink.scope>
3535
<scala.compat.version>2.12</scala.compat.version>
36-
<geotools.version>28.2</geotools.version>
36+
<geotools.version>33.1</geotools.version>
3737
<log4j.version>2.17.2</log4j.version>
38+
39+
<!-- For JDK-17 and above -->
40+
<extraJavaArgs>
41+
-XX:+IgnoreUnrecognizedVMOptions
42+
--add-opens=java.base/java.lang=ALL-UNNAMED
43+
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED
44+
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
45+
--add-opens=java.base/java.io=ALL-UNNAMED
46+
--add-opens=java.base/java.net=ALL-UNNAMED
47+
--add-opens=java.base/java.nio=ALL-UNNAMED
48+
--add-opens=java.base/java.util=ALL-UNNAMED
49+
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
50+
--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
51+
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
52+
--add-opens=java.base/sun.nio.cs=ALL-UNNAMED
53+
--add-opens=java.base/sun.security.action=ALL-UNNAMED
54+
--add-opens=java.base/sun.util.calendar=ALL-UNNAMED
55+
-Djdk.reflect.useDirectMethodHandle=false
56+
</extraJavaArgs>
3857
</properties>
3958

4059
<dependencies>
@@ -139,7 +158,7 @@
139158
<dependency>
140159
<groupId>junit</groupId>
141160
<artifactId>junit</artifactId>
142-
<version>4.12</version>
161+
<version>4.13.1</version>
143162
<scope>test</scope>
144163
</dependency>
145164
</dependencies>
@@ -209,27 +228,6 @@
209228
<goal>shade</goal>
210229
</goals>
211230
<configuration>
212-
<transformers>
213-
<!-- use transformer to handle merge of META-INF/services - see http://java.net/jira/browse/JERSEY-440?focusedCommentId=14822&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_14822 -->
214-
<transformer
215-
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
216-
<transformer
217-
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
218-
<resource>reference.conf</resource>
219-
</transformer>
220-
<transformer
221-
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
222-
<manifestEntries>
223-
<Specification-Title>Java Advanced Imaging Image I/O Tools</Specification-Title>
224-
<Specification-Version>1.1</Specification-Version>
225-
<Specification-Vendor>Sun Microsystems, Inc.</Specification-Vendor>
226-
<Implementation-Title>com.sun.media.imageio</Implementation-Title>
227-
<Implementation-Version>1.1</Implementation-Version>
228-
<Implementation-Vendor>Sun Microsystems, Inc.</Implementation-Vendor>
229-
<Extension-Name>com.sun.media.imageio</Extension-Name>
230-
</manifestEntries>
231-
</transformer>
232-
</transformers>
233231
<filters>
234232
<!-- filter to address "Invalid signature file" issue - see http://stackoverflow.com/a/6743609/589215-->
235233
<filter>
@@ -241,6 +239,10 @@
241239
</excludes>
242240
</filter>
243241
</filters>
242+
<transformers>
243+
<!-- Merge service files -->
244+
<transformer implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
245+
</transformers>
244246
</configuration>
245247
</execution>
246248
</executions>

examples/spark-sql/pom.xml

Lines changed: 48 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,7 @@
2323

2424
<groupId>org.apache.sedona</groupId>
2525
<artifactId>sedona-spark-example</artifactId>
26-
<version>1.6.0</version>
26+
<version>1.8.0</version>
2727
<name>Sedona : Examples : Spark</name>
2828
<description>Maven Example for SedonaDB</description>
2929
<packaging>jar</packaging>
@@ -34,13 +34,31 @@
3434
<sedona.scope>compile</sedona.scope>
3535
<geotools.scope>compile</geotools.scope>
3636

37-
<geotools.version>28.2</geotools.version>
37+
<geotools.version>33.1</geotools.version>
3838
<jt-jiffle.version>1.1.24</jt-jiffle.version>
39-
<spark.version>3.4.0</spark.version>
40-
<spark.compat.version>3.4</spark.compat.version>
41-
<scala.compat.version>2.12</scala.compat.version>
42-
<sedona.version>1.5.1</sedona.version>
43-
<hadoop.version>3.3.4</hadoop.version>
39+
<spark.version>4.0.1</spark.version>
40+
<spark.compat.version>4.0</spark.compat.version>
41+
<scala.compat.version>2.13</scala.compat.version>
42+
<hadoop.version>3.4.2</hadoop.version>
43+
44+
<!-- For JDK-17 and above -->
45+
<extraJavaArgs>
46+
-XX:+IgnoreUnrecognizedVMOptions
47+
--add-opens=java.base/java.lang=ALL-UNNAMED
48+
--add-opens=java.base/java.lang.invoke=ALL-UNNAMED
49+
--add-opens=java.base/java.lang.reflect=ALL-UNNAMED
50+
--add-opens=java.base/java.io=ALL-UNNAMED
51+
--add-opens=java.base/java.net=ALL-UNNAMED
52+
--add-opens=java.base/java.nio=ALL-UNNAMED
53+
--add-opens=java.base/java.util=ALL-UNNAMED
54+
--add-opens=java.base/java.util.concurrent=ALL-UNNAMED
55+
--add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
56+
--add-opens=java.base/sun.nio.ch=ALL-UNNAMED
57+
--add-opens=java.base/sun.nio.cs=ALL-UNNAMED
58+
--add-opens=java.base/sun.security.action=ALL-UNNAMED
59+
--add-opens=java.base/sun.util.calendar=ALL-UNNAMED
60+
-Djdk.reflect.useDirectMethodHandle=false
61+
</extraJavaArgs>
4462
</properties>
4563

4664
<dependencies>
@@ -59,7 +77,7 @@
5977
<dependency>
6078
<groupId>org.apache.sedona</groupId>
6179
<artifactId>sedona-spark-${spark.compat.version}_${scala.compat.version}</artifactId>
62-
<version>${sedona.version}</version>
80+
<version>${project.version}</version>
6381
<scope>${sedona.scope}</scope>
6482
</dependency>
6583
<!--The following GeoTools dependencies use GNU Lesser General Public License and thus are excluded from the binary distribution-->
@@ -172,7 +190,7 @@
172190
<dependency>
173191
<groupId>junit</groupId>
174192
<artifactId>junit</artifactId>
175-
<version>4.12</version>
193+
<version>4.13.1</version>
176194
<scope>test</scope>
177195
</dependency>
178196
</dependencies>
@@ -273,7 +291,7 @@
273291
<plugin>
274292
<groupId>org.apache.maven.plugins</groupId>
275293
<artifactId>maven-shade-plugin</artifactId>
276-
<version>2.1</version>
294+
<version>3.5.0</version>
277295
<executions>
278296
<execution>
279297
<phase>package</phase>
@@ -291,6 +309,7 @@
291309
</transformer>
292310
<transformer
293311
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
312+
<mainClass>Main</mainClass>
294313
<manifestEntries>
295314
<Specification-Title>Java Advanced Imaging Image I/O Tools</Specification-Title>
296315
<Specification-Version>1.1</Specification-Version>
@@ -317,6 +336,25 @@
317336
</execution>
318337
</executions>
319338
</plugin>
339+
<plugin>
340+
<groupId>org.codehaus.mojo</groupId>
341+
<artifactId>exec-maven-plugin</artifactId>
342+
<version>3.0.0</version>
343+
<configuration>
344+
<mainClass>Main</mainClass>
345+
<arguments>
346+
<argument>${extraJavaArgs}</argument>
347+
</arguments>
348+
</configuration>
349+
</plugin>
350+
<plugin>
351+
<groupId>org.apache.maven.plugins</groupId>
352+
<artifactId>maven-surefire-plugin</artifactId>
353+
<version>2.22.2</version>
354+
<configuration>
355+
<argLine>${extraJavaArgs}</argLine>
356+
</configuration>
357+
</plugin>
320358
</plugins>
321359
<resources>
322360
<resource>

0 commit comments

Comments
 (0)