maven - 目标特定的 javax.net.ssl.trustStore

标签 maven ssl

我有一个 Maven 项目,我使用 org.apache.tomcat.maven:tomcat6-maven-plugin 部署到远程 Tomcat。

此 tomcat 已配置,因此我需要指定:

-Djavax.net.ssl.trustStore=mykeystore.jks -Djavax.net.ssl.trustStorePassword=mypassword

我的问题是,这样做后,我无法再通过我公司的代理从远程存储库下载依赖项,因为它尝试使用此信任库建立安全连接,但失败了...

我正在寻找一种连接两端(maven repo 和我的远程 tomcat)的方法,而不必每次都设置/取消设置我的 MAVEN_OPTS 变量... 我已经看到我可以有一个 <configuration /> settings.xml 中的元素,但找不到要放入其中的内容。

谢谢...

最佳答案

在 maven 中使用不同的配置文件: 在您的 pom 中定义事件配置文件(您也可以在 settings.xml 中定义配置文件,但我认为这应该适用于您的情况):

<profiles>

    <profile>
        <id>TOMCAT_DEPLOY</id>
        <activation>
            // Rules to active the profile
            <activeByDefault>true</activeByDefault>
        </activation>

        <properties>
        </properties>
        // Add rest of profile specific configuration
   </profile>
</profiles>

要使用特定配置文件执行 Maven,基本上您有一个事件配置文件列表,您可以根据不同的触发器执行其中一个:

配置文件可以通过多种方式触发/激活:

明确地,通过Maven设置,基于环境变量操作系统设置或基于一些存在或丢失的文件

请阅读此link您可以在其中获得有关配置文件的所有信息以及如何为任何执行激活它们

关于maven - 目标特定的 javax.net.ssl.trustStore,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36479533/

相关文章:

java - 编译 fatal error : java. lang.Il legalAccessError : class lombok. javac.apt.LombokProcessor

java - 为什么 'gradle install' 会用 'unspecified' 替换我的版本?

java - 为什么我在eclipse中获取不到wss4j maven依赖?

http - 通过 SSL 传递 GET 变量 = 安全?

ssl - 将自签名证书添加到 ubuntu 以与 curl 一起使用

java - WAR 无法从 tomcat 服务器 7 部署

java - 如何让 Eclipse 从 POM 中获取 Java 9 选项?

mysql - ssl连接错误: unknown error number

python - Selenium、Python、Marionette 证书警告

amazon-web-services - AWS 上的 Realm 对象服务器 (ROS) : how to make a valid Websocket request?