This is an automated email from the ASF dual-hosted git repository.
jiayu pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sedona.git
The following commit(s) were added to refs/heads/master by this push:
new 4bc6f30944 [GH-2441] Fix failed example project build (#2498)
4bc6f30944 is described below
commit 4bc6f30944df0185b43fda23d84876f39c7ff945
Author: Jia Yu <[email protected]>
AuthorDate: Sat Nov 15 02:57:16 2025 -0600
[GH-2441] Fix failed example project build (#2498)
---
.github/workflows/example.yml | 48 +++++++++++++++++++++++++++++++----
examples/flink-sql/pom.xml | 50 +++++++++++++++++++------------------
examples/spark-sql/pom.xml | 58 +++++++++++++++++++++++++++++++++++--------
3 files changed, 117 insertions(+), 39 deletions(-)
diff --git a/.github/workflows/example.yml b/.github/workflows/example.yml
index 733d457cd7..e038055923 100644
--- a/.github/workflows/example.yml
+++ b/.github/workflows/example.yml
@@ -44,18 +44,41 @@ jobs:
fail-fast: false
matrix:
include:
+ - spark: 4.0.1
+ spark-compat: '4.0'
+ sedona: 1.8.0
+ hadoop: 3.4.2
- spark: 3.5.0
spark-compat: '3.5'
- sedona: 1.5.1
+ sedona: 1.8.0
+ hadoop: 3.3.4
- spark: 3.4.2
spark-compat: '3.4'
- sedona: 1.5.1
+ sedona: 1.8.0
+ hadoop: 3.3.4
+ env:
+ JAVA_TOOL_OPTIONS: >-
+ -XX:+IgnoreUnrecognizedVMOptions
+ --add-opens=java.base/java.lang=ALL-UNNAMED
+ --add-opens=java.base/java.lang.invoke=ALL-UNNAMED
+ --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
+ --add-opens=java.base/java.io=ALL-UNNAMED
+ --add-opens=java.base/java.net=ALL-UNNAMED
+ --add-opens=java.base/java.nio=ALL-UNNAMED
+ --add-opens=java.base/java.util=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.ch=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.cs=ALL-UNNAMED
+ --add-opens=java.base/sun.security.action=ALL-UNNAMED
+ --add-opens=java.base/sun.util.calendar=ALL-UNNAMED
+ -Djdk.reflect.useDirectMethodHandle=false
steps:
- uses: actions/checkout@v4
- uses: actions/setup-java@v4
with:
distribution: 'zulu'
- java-version: '11'
+ java-version: '17'
- run: sudo apt-get remove scala-library scala
- run: sudo wget www.scala-lang.org/files/archive/scala-2.12.11.deb
- run: sudo dpkg -i scala-2.12.11.deb
@@ -82,5 +105,20 @@ jobs:
SPARK_LOCAL_IP: 127.0.0.1
SPARK_COMPAT_VERSION: ${{ matrix.spark-compat }}
SEDONA_VERSION: ${{ matrix.sedona }}
- 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)
- - run: (cd examples/flink-sql;mvn clean install;java -jar
target/sedona-flink-example-1.6.0.jar)
+ HADOOP_VERSION: ${{ matrix.hadoop }}
+ run: |
+ cd examples/spark-sql
+ mvn versions:set -DnewVersion=${SEDONA_VERSION}
-DgenerateBackupPoms=false
+ mvn clean install \
+ -Dspark.version=${SPARK_VERSION} \
+ -Dspark.compat.version=${SPARK_COMPAT_VERSION} \
+ -Dsedona.version=${SEDONA_VERSION} \
+ -Dhadoop.version=${HADOOP_VERSION}
+ java -jar target/sedona-spark-example-${SEDONA_VERSION}.jar
+ - env:
+ SEDONA_VERSION: ${{ matrix.sedona }}
+ run: |
+ cd examples/flink-sql
+ mvn versions:set -DnewVersion=${SEDONA_VERSION}
-DgenerateBackupPoms=false
+ mvn clean install
+ java -jar target/sedona-flink-example-${SEDONA_VERSION}.jar
diff --git a/examples/flink-sql/pom.xml b/examples/flink-sql/pom.xml
index 6c7c2121c9..d6f7e97b68 100644
--- a/examples/flink-sql/pom.xml
+++ b/examples/flink-sql/pom.xml
@@ -23,7 +23,7 @@
<groupId>org.apache.sedona</groupId>
<artifactId>sedona-flink-example</artifactId>
- <version>1.6.0</version>
+ <version>1.8.0</version>
<name>Sedona : Examples : Flink</name>
<packaging>jar</packaging>
@@ -33,8 +33,27 @@
<flink.version>1.19.0</flink.version>
<flink.scope>compile</flink.scope>
<scala.compat.version>2.12</scala.compat.version>
- <geotools.version>28.2</geotools.version>
+ <geotools.version>33.1</geotools.version>
<log4j.version>2.17.2</log4j.version>
+
+ <!-- For JDK-17 and above -->
+ <extraJavaArgs>
+ -XX:+IgnoreUnrecognizedVMOptions
+ --add-opens=java.base/java.lang=ALL-UNNAMED
+ --add-opens=java.base/java.lang.invoke=ALL-UNNAMED
+ --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
+ --add-opens=java.base/java.io=ALL-UNNAMED
+ --add-opens=java.base/java.net=ALL-UNNAMED
+ --add-opens=java.base/java.nio=ALL-UNNAMED
+ --add-opens=java.base/java.util=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.ch=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.cs=ALL-UNNAMED
+ --add-opens=java.base/sun.security.action=ALL-UNNAMED
+ --add-opens=java.base/sun.util.calendar=ALL-UNNAMED
+ -Djdk.reflect.useDirectMethodHandle=false
+ </extraJavaArgs>
</properties>
<dependencies>
@@ -139,7 +158,7 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.12</version>
+ <version>4.13.1</version>
<scope>test</scope>
</dependency>
</dependencies>
@@ -209,27 +228,6 @@
<goal>shade</goal>
</goals>
<configuration>
- <transformers>
- <!-- 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
-->
- <transformer
-
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
- <transformer
-
implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
- <resource>reference.conf</resource>
- </transformer>
- <transformer
-
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
- <manifestEntries>
- <Specification-Title>Java Advanced
Imaging Image I/O Tools</Specification-Title>
-
<Specification-Version>1.1</Specification-Version>
- <Specification-Vendor>Sun
Microsystems, Inc.</Specification-Vendor>
-
<Implementation-Title>com.sun.media.imageio</Implementation-Title>
-
<Implementation-Version>1.1</Implementation-Version>
- <Implementation-Vendor>Sun
Microsystems, Inc.</Implementation-Vendor>
-
<Extension-Name>com.sun.media.imageio</Extension-Name>
- </manifestEntries>
- </transformer>
- </transformers>
<filters>
<!-- filter to address "Invalid signature
file" issue - see http://stackoverflow.com/a/6743609/589215-->
<filter>
@@ -241,6 +239,10 @@
</excludes>
</filter>
</filters>
+ <transformers>
+ <!-- Merge service files -->
+ <transformer
implementation="org.apache.maven.plugins.shade.resource.ServicesResourceTransformer"/>
+ </transformers>
</configuration>
</execution>
</executions>
diff --git a/examples/spark-sql/pom.xml b/examples/spark-sql/pom.xml
index b15f209b08..f2c647d653 100644
--- a/examples/spark-sql/pom.xml
+++ b/examples/spark-sql/pom.xml
@@ -23,7 +23,7 @@
<groupId>org.apache.sedona</groupId>
<artifactId>sedona-spark-example</artifactId>
- <version>1.6.0</version>
+ <version>1.8.0</version>
<name>Sedona : Examples : Spark</name>
<description>Maven Example for SedonaDB</description>
<packaging>jar</packaging>
@@ -34,13 +34,31 @@
<sedona.scope>compile</sedona.scope>
<geotools.scope>compile</geotools.scope>
- <geotools.version>28.2</geotools.version>
+ <geotools.version>33.1</geotools.version>
<jt-jiffle.version>1.1.24</jt-jiffle.version>
- <spark.version>3.4.0</spark.version>
- <spark.compat.version>3.4</spark.compat.version>
- <scala.compat.version>2.12</scala.compat.version>
- <sedona.version>1.5.1</sedona.version>
- <hadoop.version>3.3.4</hadoop.version>
+ <spark.version>4.0.1</spark.version>
+ <spark.compat.version>4.0</spark.compat.version>
+ <scala.compat.version>2.13</scala.compat.version>
+ <hadoop.version>3.4.2</hadoop.version>
+
+ <!-- For JDK-17 and above -->
+ <extraJavaArgs>
+ -XX:+IgnoreUnrecognizedVMOptions
+ --add-opens=java.base/java.lang=ALL-UNNAMED
+ --add-opens=java.base/java.lang.invoke=ALL-UNNAMED
+ --add-opens=java.base/java.lang.reflect=ALL-UNNAMED
+ --add-opens=java.base/java.io=ALL-UNNAMED
+ --add-opens=java.base/java.net=ALL-UNNAMED
+ --add-opens=java.base/java.nio=ALL-UNNAMED
+ --add-opens=java.base/java.util=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent=ALL-UNNAMED
+ --add-opens=java.base/java.util.concurrent.atomic=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.ch=ALL-UNNAMED
+ --add-opens=java.base/sun.nio.cs=ALL-UNNAMED
+ --add-opens=java.base/sun.security.action=ALL-UNNAMED
+ --add-opens=java.base/sun.util.calendar=ALL-UNNAMED
+ -Djdk.reflect.useDirectMethodHandle=false
+ </extraJavaArgs>
</properties>
<dependencies>
@@ -59,7 +77,7 @@
<dependency>
<groupId>org.apache.sedona</groupId>
<artifactId>sedona-spark-${spark.compat.version}_${scala.compat.version}</artifactId>
- <version>${sedona.version}</version>
+ <version>${project.version}</version>
<scope>${sedona.scope}</scope>
</dependency>
<!--The following GeoTools dependencies use GNU Lesser General Public
License and thus are excluded from the binary distribution-->
@@ -172,7 +190,7 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
- <version>4.12</version>
+ <version>4.13.1</version>
<scope>test</scope>
</dependency>
</dependencies>
@@ -273,7 +291,7 @@
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
- <version>2.1</version>
+ <version>3.5.0</version>
<executions>
<execution>
<phase>package</phase>
@@ -291,6 +309,7 @@
</transformer>
<transformer
implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
+ <mainClass>Main</mainClass>
<manifestEntries>
<Specification-Title>Java Advanced
Imaging Image I/O Tools</Specification-Title>
<Specification-Version>1.1</Specification-Version>
@@ -317,6 +336,25 @@
</execution>
</executions>
</plugin>
+ <plugin>
+ <groupId>org.codehaus.mojo</groupId>
+ <artifactId>exec-maven-plugin</artifactId>
+ <version>3.0.0</version>
+ <configuration>
+ <mainClass>Main</mainClass>
+ <arguments>
+ <argument>${extraJavaArgs}</argument>
+ </arguments>
+ </configuration>
+ </plugin>
+ <plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-surefire-plugin</artifactId>
+ <version>2.22.2</version>
+ <configuration>
+ <argLine>${extraJavaArgs}</argLine>
+ </configuration>
+ </plugin>
</plugins>
<resources>
<resource>