aliyun / aliyun/alibabacloud-java-sdk

[JPMS 支持] 目前SDK缺少稳定模块名称, 在特殊境况下无法构建 (gradle)

Open
#18 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Java
Stars
101
Forks
65
PR merge metrics
No merged PRs in 30d

Description

gradle 构建报错

gradle 7.6 + JPMS 环境

image

原因就是 gradle 违反了自动模块解析规则, 拒绝解析依赖文件名的自动模块. 虽是构建工具的问题, 但是建议SDK支持下JPMS
简单点的就在 JDK 清单文件里添加 Automatic-Module-Name 即可
完整支持可以考虑用 https://openjdk.org/jeps/238#Classpath-and-modulepath 添加 module-info.java

如果现在不支持, gradle 无法使用, maven 会依赖文件名解析模块名
将来如果指定的模块名称和文件名解析的不一致又会导致一波报错~

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the Gradle 7.6 JPMS build failure described in the issue and inspect the JDK manifest configuration for the SDK artifacts. Compare the Automatic-Module-Name approach with adding module-info.java; done means the SDK builds under JPMS with a stable module name and does not rely on artifact filenames.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
build-system
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.