配置选项

选项 类型 描述 默认值 支持 Repo ID 后缀
aether.artifactResolver.snapshotNormalization 布尔值 它用仅包含SNAPSHOT限定符的文件名替换带时间戳的快照文件名。这只会影响解析/检索工件,但不会影响上传。 真的
aether.checksums.forSignature 布尔值 指示签名工件 ( .asc ) 是否应具有校验和的标志。 错误的
aether.checksums.algorithms 细绳 传递给MessageDigest的算法列表,用于验证(下载)和生成(上传)校验和。 “SHA-1,MD5”
aether.conflictResolver.verbose 布尔值 控制冲突解决程序的详细模式的标志。 错误的
aether.connector.basic.threadsmaven.artifact.threads 整数 用于上传/下载的线程数。 5
aether.connector.classpath.loader 类加载器 应该从中检索资源的ClassLoader以classpath:协议开头。 Thread.currentThread().getContextClassLoader()
aether.connector.connectTimeout 以毫秒为单位的连接超时。 10000 是的
aether.connector.http.cacheState 布尔值 指示基于内存的缓存是否用于用户令牌、连接管理器、期望继续请求和身份验证方案的标志。 真的
aether.connector.http.credentialEncoding 细绳 与 HTTP 服务器交换凭据时使用的编码/字符集。 “ISO-8859-1” 是的
aether.connector.http.headers 地图<字符串,字符串> 用于基于 HTTP 的存储库连接器的请求标头。标头是使用将标头名称映射到其值的字符串映射来指定的。存储库特定的标头映射应该是完整的,即不与通用标头映射合并。 - 是的
aether.connector.https.cipherSuites 细绳 为 HTTPS 连接启用的密码套件的逗号分隔列表。 - (没有限制)
aether.connector.https.protocols 细绳 为 HTTPS 连接启用的协议的逗号分隔列表。 - (没有限制)
aether.connector.perms.fileMode 细绳 为新创建的文件设置权限的八进制数字表示法。仅由某些 Wagon 供应商考虑。 -
aether.connector.perms.dirMode 细绳 为新创建的目录设置权限的八进制数字表示法。仅由某些 Wagon 供应商考虑。 -
aether.connector.perms.group 细绳 应该拥有新创建的目录/文件的组。仅由某些 Wagon 供应商考虑。 -
aether.connector.persistedChecksums 布尔值 指示在校验和验证期间检索到的校验和是否应保留在本地文件系统中它们为其提供校验和的文件旁边的标志。 真的
aether.connector.resume 下载 布尔值 如果下载被中断,是否恢复部分下载的文件。 真的 是的
aether.connector.resumeThreshold 部分下载至少需要恢复的字节大小。要求aether.connector.resumeDownloadstrue才能生效。 64 * 1024 是的
aether.connector.requestTimeout 请求超时(以毫秒为单位)。 1800000 是的
aether.connector.smartChecksums 布尔值 标志表明,它不会将来自远程仓库的显式校验和与计算出的校验和进行比较,而是尝试从实际工件请求的名为ETag的响应标头中提取参考校验和,格式为{SHA1{<checksum>}}。这仅适用于 HTTP(S) 请求和某些传输扩展。此外,它仅支持 SHA-1。 真的
aether.connector.userAgent 细绳 存储库连接器应向服务器报告的用户代理。 “醚”
aether.connector.wagon.config 目的 用于 Wagon 提供程序的配置。 - 是(必须使用)
aether.dependencyCollector.maxCycles 整数 仅发出给定数量的循环依赖项。 10
aether.dependencyCollector.maxExceptions 整数 仅发出不超过此配置属性中给定数量的异常。超过该数量的异常将被吞下。 50
aether.dependencyManager.verbose 布尔值 控制依赖管理的详细模式的标志。如果启用,则在构建依赖图时,将在节点的DependencyNode#getData()中记录由于依赖管理而更新之前依赖的原始属性。 错误的
aether.enhancedLocalRepository.trackingFilename 细绳 跟踪远程存储库的文件的文件名。 “_remote.repositories”
aether.interactive 布尔值 指示是否允许与用户交互的标志。 错误的
aether.metadataResolver.threads 整数 并行用于解析元数据的线程数。 4
aether.offline.protocols 细绳 应该离线解析的协议的逗号分隔列表。 -
aether.offline.hosts 细绳 应该离线解析的主机的逗号分隔列表。 -
aether.priority.<class> 漂浮 用于某个扩展类的优先级。class可以是完全限定名称,也可以是简单名称代表完全限定的类名称。如果类名以Factory结尾,则可以选择省略该后缀。 -
aether.priority.implicit 布尔值 指示可插入扩展的优先级是否由它们的迭代顺序隐式给出的标志,使得第一个扩展具有最高优先级。如果设置,则在可用扩展中搜索合适的实现时,将忽略扩展的内置优先级以及任何相应的aether.priority.<class>配置属性。此优先级模式适用于应用程序将按所需搜索顺序呈现/注入扩展的情况。 错误的
aether.snapshotFilter 布尔值 标记是否应强制ContextualSnapshotVersionFilter禁止快照。默认情况下,仅当根工件不是快照时才会过滤快照。 错误的
aether.syncContext.named.factory 细绳 实现org.eclipse.aether.named.NamedLockFactory接口的命名锁工厂的名称。 “rwlock-本地”
aether.syncContext.named.nameMapper 细绳 实现org.eclipse.aether.internal.impl.synccontext.named.NameMapper接口的名称映射器的名称。 “加夫”
aether.syncContext.named.time 同步上下文等待获得锁的时间量。 30
aether.syncContext.named.time.unit 锁定等待时间的单位。 “秒”
aether.syncContext.named.static.name 细绳 静态名称映射器的锁定名称。 “静止的”
aether.syncContext.named.discriminating.discriminator 细绳 标识 Resolver 实例的鉴别器名称前缀。 "sha1('${hostname:-localhost}:${maven.repo.local}')""sha1('')"如果生成失败
aether.syncContext.named.redisson.config文件 细绳 YAML 格式的 Redisson 配置文件的路径。详细阅读官方文档 无或“${maven.conf}/maven-resolver-redisson.yaml”(如果存在)
aether.updateCheckManager.sessionState 细绳 管理会话状态,即影响对工件/元数据的相同下载请求是否会在同一个 RepositorySystemSession 内多次发生。如果“启用”将启用会话状态。如果“绕过”将启用绕过(即存储所有已更新但不评估的工件 id/元数据 id)。所有其他值会导致完全禁用会话状态。 “启用”

在Supports Repo ID Suffix列中为yes的所有属性都可以选择性地专门为存储库 ID 配置。在这种情况下,配置属性需要后缀一个句点,后跟要配置的存储库的存储库 ID,例如aether.connector.http.headers.central用于 ID 为central的存储库。

属性类型转换

如果目标类型中未给出该值,则应用以下转换。

细绳 布尔值 Boolean.parseBoolean(...)
细绳 整数 整数.parseInt(...)
细绳 Long.parseLong(...)
细绳 漂浮 Float.parseFloat(...)

从 Apache Maven 设置配置

要从上面设置配置选项之一,只需使用系统变量。由于系统变量仅支持字符串值,因此需要利用上述类型转换。有时 Maven 使用与 Maven 解析器本身不同的默认值,或者尝试从server.xml中提取某些值。有关详细信息,请参阅https://github.com/apache/maven/blob/master/maven-core/src/main/java/org/apache/maven/internal/aether/DefaultRepositorySystemSessionFactory.java