使用 HTTPS 使用 Maven 将 war 文件部署到 tomcat
deploying a war file with maven to tomcat using HTTPS
我正在使用 Tomcat 8、Maven 3.1.1、JDK 1.8.0_31 和 tomcat7-maven-plugin 2.2。
我的 OS 是 Windows 7 64 位。
当 war 文件配置为 HTTPS 时,我无法将其部署到 Tomcat。 HTTP 工作正常。
我在 Whosebug 上找到了两个线程,但它们没有解决我的问题。
密钥库文件仅包含一项。
我的 Maven settings.xml 包含 tomcat 服务器的有效管理员凭据。
这里是POM插件配置。
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>https://localhost:8443/manager/text</url>
<server>tomcat8-local</server>
<path>/entryServlet</path>
<httpsPort>8443</httpsPort>
<keystoreFile>D:\intellij-project\keystore\keystore</keystoreFile>
<keystorePass>pass1</keystorePass>
</configuration>
</pugin>
这是 Maven 输出:
[INFO] --- tomcat7-maven-plugin:2.2:deploy (default-cli) @ intellij-project ---
[INFO] Deploying war to https://localhost:8443/entryServlet
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.194s
[INFO] Finished at: Wed Jan 21 10:13:29 CET 2015
[INFO] Final Memory: 17M/206M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy (default-cli) on project intellij-project:
Cannot invoke Tomcat manager: sun.security.validator.ValidatorException:
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target -> [Help 1]
我找到了解决方案:我必须将我自己创建的证书导入到
Java 密钥库位于 JAVA_HOME/jre/lib/security
我遵循了这些说明:
No more 'unable to find valid certification path to requested target'
我正在使用 Tomcat 8、Maven 3.1.1、JDK 1.8.0_31 和 tomcat7-maven-plugin 2.2。 我的 OS 是 Windows 7 64 位。
当 war 文件配置为 HTTPS 时,我无法将其部署到 Tomcat。 HTTP 工作正常。
我在 Whosebug 上找到了两个线程,但它们没有解决我的问题。
密钥库文件仅包含一项。 我的 Maven settings.xml 包含 tomcat 服务器的有效管理员凭据。
这里是POM插件配置。
<plugin>
<groupId>org.apache.tomcat.maven</groupId>
<artifactId>tomcat7-maven-plugin</artifactId>
<version>2.2</version>
<configuration>
<url>https://localhost:8443/manager/text</url>
<server>tomcat8-local</server>
<path>/entryServlet</path>
<httpsPort>8443</httpsPort>
<keystoreFile>D:\intellij-project\keystore\keystore</keystoreFile>
<keystorePass>pass1</keystorePass>
</configuration>
</pugin>
这是 Maven 输出:
[INFO] --- tomcat7-maven-plugin:2.2:deploy (default-cli) @ intellij-project ---
[INFO] Deploying war to https://localhost:8443/entryServlet
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 2.194s
[INFO] Finished at: Wed Jan 21 10:13:29 CET 2015
[INFO] Final Memory: 17M/206M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal org.apache.tomcat.maven:tomcat7-maven-plugin:2.2:deploy (default-cli) on project intellij-project:
Cannot invoke Tomcat manager: sun.security.validator.ValidatorException:
PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException:
unable to find valid certification path to requested target -> [Help 1]
我找到了解决方案:我必须将我自己创建的证书导入到 Java 密钥库位于 JAVA_HOME/jre/lib/security
我遵循了这些说明: No more 'unable to find valid certification path to requested target'