You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

基于批量JAR包列表生成含依赖的pom.xml用于GHAS EOL扫描

生成适配GHAS扫描的pom.xml文件方案

1. 把JAR包转换为Maven坐标

每个JAR对应Maven的groupId:artifactId:version结构,得从文件名拆分信息:

  • 带版本的JAR(比如spring-jdbc-4.3.6.RELEASE.jar):拆分出artifactId=spring-jdbc,version=4.3.6.RELEASE,groupId按常规包前缀填写,这里是org.springframework
  • 不带版本的JAR(比如commons-codec.jar):需要补全groupId和版本,比如commons-codec的groupId就是commons-codec,常用稳定版本为1.15,可通过Maven仓库确认准确版本

2. 编写完整的pom.xml文件

先搭建pom的基础骨架,再将所有JAR对应的依赖项逐一添加进去,示例如下:

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <!-- 自定义项目信息,不影响GHAS扫描结果 -->
    <groupId>com.yourteam</groupId>
    <artifactId>jar-eol-check</artifactId>
    <version>1.0.0-SNAPSHOT</version>

    <dependencies>
        <!-- 示例依赖,按你的500+JAR逐个补充 -->
        <dependency>
            <groupId>org.springframework</groupId>
            <artifactId>spring-jdbc</artifactId>
            <version>4.3.6.RELEASE</version>
        </dependency>
        <dependency>
            <groupId>commons-codec</groupId>
            <artifactId>commons-codec</artifactId>
            <version>1.15</version>
        </dependency>
        <dependency>
            <groupId>commons-fileupload</groupId>
            <artifactId>commons-fileupload</artifactId>
            <version>1.4</version>
        </dependency>
    </dependencies>
</project>

3. 批量处理无版本号的JAR包

手动补全500个无版本JAR的信息效率太低,可以用脚本简化:

  • 用Python调用Maven Central的REST接口,输入artifactId自动获取对应的groupId和最新稳定版本
  • 或者使用mvn dependency:get -Dartifact=artifactId::version命令尝试自动匹配坐标

4. 触发GHAS扫描

将生成的pom.xml上传到GitHub仓库,开启GHAS的Dependency Scanning功能,它会自动检测每个依赖的终止支持(EOL)状态。

内容的提问来源于stack exchange,提问作者Shubha P

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 18:08:35