-
Notifications
You must be signed in to change notification settings - Fork 2
build: 支持打包zip产物 #2129
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
build: 支持打包zip产物 #2129
Conversation
Close #2084 Signed-off-by: unknowIfGuestInDream <liang.tang.cx@gmail.com>
|
The latest updates on your projects. Learn more about Vercel for Git ↗︎
|
Reviewer's GuideThis pull request adds the capability to package the File-Level Changes
Assessment against linked issues
Possibly linked issues
Tips and commandsInteracting with Sourcery
Customizing Your ExperienceAccess your dashboard to:
Getting Help
|
Their most recently public accepted PR is: unknowIfGuestInDream/document#170 |
|
Thank you for following naming conventions! 😻 |
|
""" Walkthrough本次更改主要围绕项目的打包流程进行扩展和优化。README(含中、英、日三语版本)中“打包”部分被详细补充,明确了 IDEA 工件聚合包、推荐使用 Changes
Sequence Diagram(s)sequenceDiagram
participant 开发者
participant Maven
participant Assembly插件
participant Antrun插件
开发者->>Maven: mvn package -Pzip -Djavafx.platform=xxx -DskipTests
Maven->>Assembly插件: 读取 zip.xml,打包 zip(含依赖、docs、平台特定文件等)
Assembly插件-->>Maven: 生成 zip 包
Maven->>Antrun插件: 计算 zip 包 SHA-256 校验值
Antrun插件-->>Maven: 输出 .sha256 校验文件
Maven-->>开发者: 产出 zip 包及校验文件
Assessment against linked issues
Suggested labels
Suggested reviewers
Poem
📜 Recent review detailsConfiguration used: CodeRabbit UI 📒 Files selected for processing (2)
🚧 Files skipped from review as they are similar to previous changes (2)
⏰ Context from checks skipped due to timeout of 90000ms (6)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Hey @unknowIfGuestInDream - I've reviewed your changes - here's some feedback:
- Consider extracting the common build profile configuration for zip packaging into a parent POM or shared plugin management to avoid duplication between
qe/pom.xmlandsmc/pom.xml. - Setting a default value for
javafx.platformmight lead to accidental builds for the wrong platform if the-Dflag is forgotten; consider removing the default to force explicit platform specification.
Here's what I looked at during the review
- 🟡 General issues: 2 issues found
- 🟢 Security: all looks good
- 🟢 Testing: all looks good
- 🟢 Documentation: all looks good
Help me be more useful! Please click 👍 or 👎 on each comment and I'll use the feedback to improve your reviews.
Close #2084 Signed-off-by: unknowIfGuestInDream <liang.tang.cx@gmail.com>
Close #2084 Signed-off-by: unknowIfGuestInDream <liang.tang.cx@gmail.com>
Qodana Community for JVMIt seems all right 👌 No new problems were found according to the checks applied 💡 Qodana analysis was run in the pull request mode: only the changed files were checked Contact Qodana teamContact us at qodana-support@jetbrains.com
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Actionable comments posted: 2
🧹 Nitpick comments (8)
qe/pom.xml (2)
248-267: 检查 maven-assembly-plugin 配置
assembly 插件已配置为在package阶段生成平台特定的 ZIP 包,且appendAssemblyId=false保持最终文件名清晰。建议在此处显式声明插件<version>,以确保构建可复现。
268-297: 验证 SHA-256 校验生成及插件版本
- 请确认
${commons-codec.version}在父 POM 或当前 POM 中已定义,否则会导致构建失败。- 建议为
maven-antrun-plugin明确指定<version>,保证插件版本可控。smc/pom.xml (2)
320-338: 检查 maven-assembly-plugin 配置
assembly 插件配置正确,生成名称格式为smcTool-${javafx.platform},建议在该插件段落中添加<version>声明,以提升构建可复现性。
340-369: 验证 SHA-256 校验及依赖属性
- 请确认
${commons-codec.version}属性在父 POM 或当前 POM 中有定义,以防构建中断。- 建议为
maven-antrun-plugin明确指定<version>,并校验校验流程与 qe 项目保持一致。qe/config/zip.xml (2)
1-3: 建议添加 XML 声明
在文件开头加入<?xml version="1.0" encoding="UTF-8"?>可以明确指定编码并提高工具兼容性。
1-26: 校验许可证头信息
许可证声明使用了unknowIfGuestInDream和年份2025,请确认与项目实际版权归属及年份保持一致,避免信息不符或法律风险。smc/config/zip.xml (2)
1-3: 建议添加 XML 声明
为避免编码歧义和增强 IDE 识别,可以在开头加入<?xml version="1.0" encoding="UTF-8"?>。
1-26: 校验许可证头信息
请确认许可证中unknowIfGuestInDream与2025年份信息准确无误,以符合项目实际版权声明。
📜 Review details
Configuration used: CodeRabbit UI
Review profile: CHILL
Plan: Pro
📒 Files selected for processing (7)
README.md(1 hunks)README_jp.md(1 hunks)README_zh.md(1 hunks)qe/config/zip.xml(1 hunks)qe/pom.xml(1 hunks)smc/config/zip.xml(1 hunks)smc/pom.xml(1 hunks)
⏰ Context from checks skipped due to timeout of 90000ms (8)
- GitHub Check: qodana
- GitHub Check: build (21, ubuntu-latest, false)
- GitHub Check: build (21, windows-latest, false)
- GitHub Check: build (17, macos-latest, false)
- GitHub Check: build (17, ubuntu-latest, false)
- GitHub Check: build (17, windows-latest, false)
- GitHub Check: StepSecurity Harden-Runner
- GitHub Check: Summary
🔇 Additional comments (13)
README_zh.md (3)
47-47: 文档更新:步骤1标题已更改
已将“IDEA工件打包”更新为“IDEA工件打聚合包”,与英文和日文文档保持一致,更准确地表达了构建聚合包的意图。
50-50: 文档更新:步骤2推荐mvn package
新增了推荐使用mvn package进行打包的说明,并明确指出依赖会放置在lib文件夹下,提升了文档的可读性和实用性。
51-52: 文档更新:新增 ZIP 产物打包说明
增加了通过指定 Profile=zip 及javafx.platform平台参数生成 smc 和 qe 项目 ZIP 产物的步骤说明,并提供了示例命令,文档内容完整且易于操作。README_jp.md (3)
48-48: ドキュメント更新:ステップ1タイトルの変更
「IDEA アーティファクトのパッケージ化」を「IDEAアーティファクト集約パッケージ」に更新し、英語版・中国語版と整合性を確保しています。
52-52: ドキュメント更新:ステップ2の推奨パッケージング
mvn packageコマンドの使用を推奨し、依存関係がlibフォルダに配置されることを明示しており、ユーザーの理解を助けます。
53-54: ドキュメント更新:ZIP 生成手順の追加
smc および qe プロジェクトで Profile=zip とjavafx.platformプロパティを指定して ZIP を生成する手順とサンプルコマンドを追加し、実用的なガイドを提供しています。README.md (3)
63-63: Docs: Step1 描述已更新
将 “IDEA artifact packaging” 修改为 “IDEA artifact aggregation packaging”,与多语言文档保持一致,表述更精准。
68-68: Docs: 推荐mvn package
新增推荐使用mvn package进行打包,并说明依赖位于lib文件夹,提升了操作指南的清晰度。
69-70: Docs: 新增 ZIP 包打包说明
增加了通过-Pzipprofile 以及javafx.platform平台参数生成 smc 和 qe 项目 ZIP 包的步骤,并提供跳过测试的示例命令,实用且完整。qe/pom.xml (1)
239-246: 新增 Maven Profilezip
已在qe/pom.xml中新增zipprofile,默认平台属性为win,并引入构建打包流程。配置清晰,符合 PR 目标。smc/pom.xml (1)
312-317: 新增 Maven Profilezip
在smc/pom.xml中新增zipprofile,设置默认javafx.platform属性为win,使打包流程与 qe 项目保持一致。配置清晰合理。qe/config/zip.xml (1)
74-80: 确认平台特定文件的输出路径
<directory>../jenkins/${javafx.platform}/qe</directory>与<outputDirectory>/</outputDirectory>会把所有平台相关文件扁平化到 ZIP 根目录,可能与其它资源冲突。请验证是否需要保留目录结构(例如改为<outputDirectory>/jenkins/${javafx.platform}/qe</outputDirectory>)。smc/config/zip.xml (1)
74-80: 确认平台特定文件的输出路径
<directory>../jenkins/${javafx.platform}/smc</directory>与<outputDirectory>/</outputDirectory>会将该目录下所有内容直接平铺到 ZIP 根目录,请验证是否需要保留子目录结构以避免文件冲突。
Close #2084 Signed-off-by: unknowIfGuestInDream <liang.tang.cx@gmail.com>
|



Close #2084
Fixes #
Proposed Changes
Readiness Checklist
Author/Contributor
Reviewing Maintainer
enhancement,bug,documentationordependenciesSummary by Sourcery
Add support for generating zip artifacts for smc and qe projects with platform-specific packaging
Build:
Documentation:
Summary by CodeRabbit
文档
新功能