MavenArchiver 类
- java.lang.Object
-
- org.apache.maven.archiver.MavenArchiver
-
-
字段摘要
字段 修饰符和类型 场地 描述 static StringREPOSITORY_LAYOUT存储库布局。static StringREPOSITORY_LAYOUT_NONUNIQUE存储库布局非唯一。static StringSIMPLE_LAYOUT简单的布局。static StringSIMPLE_LAYOUT_NONUNIQUE简单的布局非唯一。
-
构造函数摘要
构造函数 构造函数 描述 MavenArchiver()
-
方法总结
所有方法 实例方法 具体方法 修饰符和类型 方法 描述 DateconfigureReproducible(String outputTimestamp)如果提供了时间戳,则配置 Reproducible Builds 存档创建。voidcreateArchive(MavenSession session, MavenProject project, MavenArchiveConfiguration archiveConfiguration)JarArchivergetArchiver()ManifestgetManifest(MavenSession mavenSession, MavenProject project, ManifestConfiguration config)protected ManifestgetManifest(MavenSession session, MavenProject project, ManifestConfiguration config, Map<String,String> entries)ManifestgetManifest(MavenSession session, MavenProject project, MavenArchiveConfiguration config)ManifestgetManifest(MavenProject project, ManifestConfiguration config)返回预配置的清单。DateparseOutputTimestamp(String outputTimestamp)解析为 Reproducible Builds 的存档条目配置的输出时间戳,格式为 ISO 8601yyyy-MM-dd'T'HH:mm:ssXXX或表示自纪元以来秒数的 int(如 SOURCE_DATE_EPOCH。voidsetArchiver(JarArchiver archiver)voidsetBuildJdkSpecDefaultEntry(boolean buildJdkSpecDefaultEntry)添加“Build-Jdk-Spec”条目作为默认清单条目的一部分(默认为 true)。voidsetCreatedBy(String description, String groupId, String artifactId)为“创建者”条目定义一个值。voidsetOutputFile(File outputFile)
-
-
-
方法详情
-
获取清单
public Manifest getManifest(MavenSession session, MavenProject project, MavenArchiveConfiguration config) throws ManifestException, DependencyResolutionRequiredException
- 参数:
session- Maven 会议project- Maven 项目config- MavenArchiveConfiguration- 回报:
- 这
Manifest - 抛出:
ManifestException- 在失败的情况下DependencyResolutionRequiredException- 解决失败
-
获取清单
public Manifest getManifest(MavenProject project, ManifestConfiguration config) throws ManifestException, DependencyResolutionRequiredException
返回预配置的清单。- 参数:
project-MavenProjectconfig-ManifestConfiguration- 回报:
Manifest- 抛出:
ManifestException- 清单异常。DependencyResolutionRequiredException- 依赖解析异常。
-
获取清单
public Manifest getManifest(MavenSession mavenSession, MavenProject project, ManifestConfiguration config) throws ManifestException, DependencyResolutionRequiredException
- 参数:
mavenSession-MavenSessionproject-MavenProjectconfig-ManifestConfiguration- 回报:
Manifest- 抛出:
ManifestException- 清单异常DependencyResolutionRequiredException- 依赖解析需要异常
-
获取清单
protected Manifest getManifest(MavenSession session, MavenProject project, ManifestConfiguration config, Map<String,String> entries) throws ManifestException, DependencyResolutionRequiredException
- 参数:
session-MavenSessionproject-MavenProjectconfig-ManifestConfigurationentries- 条目。- 回报:
Manifest- 抛出:
ManifestException- 清单异常DependencyResolutionRequiredException- 依赖解析需要异常
-
获取存档
public JarArchiver getArchiver()
- 回报:
JarArchiver
-
设置存档器
public void setArchiver(JarArchiver archiver)
- 参数:
archiver-JarArchiver
-
设置输出文件
public void setOutputFile(File outputFile)
- 参数:
outputFile- 设置输出文件。
-
创建存档
public void createArchive(MavenSession session, MavenProject project, MavenArchiveConfiguration archiveConfiguration) throws ManifestException, IOException, DependencyResolutionRequiredException
- 参数:
session-MavenSessionproject-MavenProjectarchiveConfiguration-MavenArchiveConfiguration- 抛出:
ArchiverException- 存档异常。ManifestException- 清单异常。IOException- IO 异常。DependencyResolutionRequiredException- 依赖解析异常。
-
设置创建者
public void setCreatedBy(String description, String groupId, String artifactId)
为“创建者”条目定义一个值。- 参数:
description- 插件的描述,例如“Maven Source Plugin”groupId- groupId 在 pom.properties 中获取版本的位置artifactId- artifactId 在 pom.properties 中获取版本的位置- 自从:
- 3.5.0
-
setBuildJdkSpecDefaultEntry
public void setBuildJdkSpecDefaultEntry(boolean buildJdkSpecDefaultEntry)
添加“Build-Jdk-Spec”条目作为默认清单条目的一部分(默认为 true)。对于输出不受 JDK 版本影响的插件(如 maven-source-plugin),添加 Jdk 规范会增加对构建时使用的 JDK 版本的不必要要求,以获得可重现的结果。- 参数:
buildJdkSpecDefaultEntry- “Build-Jdk-Spec”条目的值- 自从:
- 3.5.0
-
解析输出时间戳
public Date parseOutputTimestamp(String outputTimestamp)
解析为 Reproducible Builds 的存档条目配置的输出时间戳,格式为 ISO 8601yyyy-MM-dd'T'HH:mm:ssXXX或表示自纪元以来秒数的 int(如 SOURCE_DATE_EPOCH。- 参数:
outputTimestamp- 的值${project.build.outputTimestamp}(可能是null)- 回报:
- 解析的时间戳,可能是
nullinputnull或 input 仅包含 1 个字符 - 抛出:
IllegalArgumentException- 如果 outputTimestamp 既不是 ISO 8601 也不是整数- 自从:
- 3.5.0
-
配置可重现
public Date configureReproducible(String outputTimestamp)
如果提供了时间戳,则配置 Reproducible Builds 存档创建。- 参数:
outputTimestamp- 的值${project.build.outputTimestamp}(可能是null)- 回报:
- 解析的时间戳
- 自从:
- 3.5.0
- 也可以看看:
parseOutputTimestamp(java.lang.String)
-
-