MavenArchiver 类
- java.lang.Object
-
- org.apache.maven.archiver.MavenArchiver
-
-
字段摘要
字段 修饰符和类型 场地 描述 static String
REPOSITORY_LAYOUT
存储库布局。static String
REPOSITORY_LAYOUT_NONUNIQUE
存储库布局非唯一。static String
SIMPLE_LAYOUT
简单的布局。static String
SIMPLE_LAYOUT_NONUNIQUE
简单的布局非唯一。
-
构造函数摘要
构造函数 构造函数 描述 MavenArchiver()
-
方法总结
所有方法 实例方法 具体方法 修饰符和类型 方法 描述 Date
configureReproducible(String outputTimestamp)
如果提供了时间戳,则配置 Reproducible Builds 存档创建。void
createArchive(MavenSession session, MavenProject project, MavenArchiveConfiguration archiveConfiguration)
JarArchiver
getArchiver()
Manifest
getManifest(MavenSession mavenSession, MavenProject project, ManifestConfiguration config)
protected Manifest
getManifest(MavenSession session, MavenProject project, ManifestConfiguration config, Map<String,String> entries)
Manifest
getManifest(MavenSession session, MavenProject project, MavenArchiveConfiguration config)
Manifest
getManifest(MavenProject project, ManifestConfiguration config)
返回预配置的清单。Date
parseOutputTimestamp(String outputTimestamp)
解析为 Reproducible Builds 的存档条目配置的输出时间戳,格式为 ISO 8601yyyy-MM-dd'T'HH:mm:ssXXX
或表示自纪元以来秒数的 int(如 SOURCE_DATE_EPOCH。void
setArchiver(JarArchiver archiver)
void
setBuildJdkSpecDefaultEntry(boolean buildJdkSpecDefaultEntry)
添加“Build-Jdk-Spec”条目作为默认清单条目的一部分(默认为 true)。void
setCreatedBy(String description, String groupId, String artifactId)
为“创建者”条目定义一个值。void
setOutputFile(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
-MavenProject
config
-ManifestConfiguration
- 回报:
Manifest
- 抛出:
ManifestException
- 清单异常。DependencyResolutionRequiredException
- 依赖解析异常。
-
获取清单
public Manifest getManifest(MavenSession mavenSession, MavenProject project, ManifestConfiguration config) throws ManifestException, DependencyResolutionRequiredException
- 参数:
mavenSession
-MavenSession
project
-MavenProject
config
-ManifestConfiguration
- 回报:
Manifest
- 抛出:
ManifestException
- 清单异常DependencyResolutionRequiredException
- 依赖解析需要异常
-
获取清单
protected Manifest getManifest(MavenSession session, MavenProject project, ManifestConfiguration config, Map<String,String> entries) throws ManifestException, DependencyResolutionRequiredException
- 参数:
session
-MavenSession
project
-MavenProject
config
-ManifestConfiguration
entries
- 条目。- 回报:
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
-MavenSession
project
-MavenProject
archiveConfiguration
-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
)- 回报:
- 解析的时间戳,可能是
null
inputnull
或 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)
-
-