build(graaljs): 通过 profile 适配 JDK 17+ 的 GraalJS 25.x

将 GraalJS 坐标提取为可覆盖属性,新增 graaljs-jdk17-plus profile,在 JDK 17+ 下自动切换到 org.graalvm.polyglot 25.0.2,兼容旧 JDK 仍使用 org.graalvm.js 22.0.0。
This commit is contained in:
everywhere.z
2026-04-30 14:27:58 +08:00
parent 192579ee8e
commit ad6a40c0e9
2 changed files with 44 additions and 8 deletions

View File

@@ -22,8 +22,14 @@
<scope>provided</scope>
</dependency>
<dependency>
<groupId>org.graalvm.js</groupId>
<artifactId>js</artifactId>
<groupId>${graaljs.polyglot.groupId}</groupId>
<artifactId>${graaljs.polyglot.artifactId}</artifactId>
<type>${graaljs.polyglot.type}</type>
</dependency>
<dependency>
<groupId>${graaljs.groupId}</groupId>
<artifactId>${graaljs.artifactId}</artifactId>
<type>${graaljs.type}</type>
</dependency>
</dependencies>
</project>
</project>

40
pom.xml
View File

@@ -60,7 +60,14 @@
<nacos.version>1.4.4</nacos.version>
<qlexpress.version>4.1.0</qlexpress.version>
<groovy.version>3.0.25</groovy.version>
<graalvm.version>22.0.0</graalvm.version>
<graaljs.groupId>org.graalvm.js</graaljs.groupId>
<graaljs.artifactId>js</graaljs.artifactId>
<graaljs.version>22.0.0</graaljs.version>
<graaljs.type>jar</graaljs.type>
<graaljs.polyglot.groupId>org.graalvm.sdk</graaljs.polyglot.groupId>
<graaljs.polyglot.artifactId>graal-sdk</graaljs.polyglot.artifactId>
<graaljs.polyglot.version>22.0.0</graaljs.polyglot.version>
<graaljs.polyglot.type>jar</graaljs.polyglot.type>
<bytebuddy.version>1.17.7</bytebuddy.version>
<aspectjweaver.version>1.9.21</aspectjweaver.version>
<logback-classic.version>1.2.3</logback-classic.version>
@@ -248,9 +255,16 @@
<version>${bytebuddy.version}</version>
</dependency>
<dependency>
<groupId>org.graalvm.js</groupId>
<artifactId>js</artifactId>
<version>${graalvm.version}</version>
<groupId>${graaljs.groupId}</groupId>
<artifactId>${graaljs.artifactId}</artifactId>
<version>${graaljs.version}</version>
<type>${graaljs.type}</type>
</dependency>
<dependency>
<groupId>${graaljs.polyglot.groupId}</groupId>
<artifactId>${graaljs.polyglot.artifactId}</artifactId>
<version>${graaljs.polyglot.version}</version>
<type>${graaljs.polyglot.type}</type>
</dependency>
<dependency>
<groupId>commons-beanutils</groupId>
@@ -481,6 +495,23 @@
</build>
<profiles>
<profile>
<id>graaljs-jdk17-plus</id>
<activation>
<jdk>[17,)</jdk>
</activation>
<properties>
<graaljs.groupId>org.graalvm.polyglot</graaljs.groupId>
<graaljs.artifactId>js</graaljs.artifactId>
<graaljs.version>25.0.2</graaljs.version>
<graaljs.type>pom</graaljs.type>
<graaljs.polyglot.groupId>org.graalvm.polyglot</graaljs.polyglot.groupId>
<graaljs.polyglot.artifactId>polyglot</graaljs.polyglot.artifactId>
<graaljs.polyglot.version>25.0.2</graaljs.polyglot.version>
<graaljs.polyglot.type>jar</graaljs.polyglot.type>
</properties>
</profile>
<profile>
<id>compile-8-to-16</id>
<modules>
@@ -582,4 +613,3 @@
</profile>
</profiles>
</project>