【问题标题】:How to setup SSL with Eclipse's maven-jetty-plugin?如何使用 Eclipse 的 maven-jetty-plugin 设置 SSL?
【发布时间】:2014-03-16 23:07:39
【问题描述】:

我希望能够使用最新的 Eclipse maven-jetty-pluginkeytool-maven-plugin 启动带有 SSL 的 Jetty,如 here 所示。但是,这两个插件现在已经过时了。

有人可以使用最新版本的插件说明一个工作示例吗?谢谢!

【问题讨论】:

    标签: maven jetty maven-jetty-plugin


    【解决方案1】:

    Carlspring,诀窍在于 SSL 连接器的实现:更新后修改包和类名。

    在 6.1.x 版本中,实现是: org.mortbay.jetty.security.SslSocketConnector

    8.x 之后,是: org.eclipse.jetty.server.ssl.SslSocketConnector

    请注意,还需要在 pom.xml 中包含 jetty-ssl 依赖项。

    <plugin>
      <groupId>org.mortbay.jetty</groupId>
      <artifactId>jetty-maven-plugin</artifactId>
      <version>7.0.0.pre5</version>
      <configuration>
        <connectors>
          <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
            <port>8080</port>
          </connector>
          <connector implementation="org.eclipse.jetty.server.ssl.SslSocketConnector">
            <port>8443</port>
            <keystore>src/test/resources/server.keystore</keystore>
            <keyPassword>123456</keyPassword>
            <password>123456</password>
          </connector>
        </connectors>
      </configuration>
      <dependencies>
        <dependency>
          <groupId>org.mortbay.jetty</groupId>
          <artifactId>jetty-ssl</artifactId>
          <version>7.0.0.pre5</version>
        </dependency>
      </dependencies>
    </plugin>
    

    【讨论】:

      【解决方案2】:

      这两个插件定义应该这样做:-

      <plugin>
                  <groupId>org.mortbay.jetty</groupId>
                  <artifactId>maven-jetty-plugin</artifactId>
                  <version>6.1.26</version>
                  <configuration>
                      <jvmArgs>-Xmx2048m -Xms1536m -XX:PermSize=128m -XX:MaxPermSize=256m</jvmArgs>
                      <!-- http://docs.codehaus.org/display/JETTY/Maven+Jetty+Plugin -->
                      <scanIntervalSeconds>10</scanIntervalSeconds>
                      <connectors>
                          <connector implementation="org.mortbay.jetty.nio.SelectChannelConnector">
                              <port>80</port>
                              <maxIdleTime>60000</maxIdleTime>
                          </connector>
                          <connector implementation="org.mortbay.jetty.security.SslSocketConnector">
                              <port>443</port>
                              <maxIdleTime>60000</maxIdleTime>
                              <keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
                              <password>jetty6</password>
                              <keyPassword>jetty6</keyPassword>
                          </connector>
                      </connectors>
                      <contextPath>/</contextPath>
                  </configuration>
              </plugin>
      
              <plugin>
                  <groupId>org.codehaus.mojo</groupId>
                  <artifactId>keytool-maven-plugin</artifactId>
                  <version>1.3</version>
                  <executions>
                      <execution>
                          <phase>generate-resources</phase>
                          <id>clean</id>
                          <goals>
                              <goal>clean</goal>
                          </goals>
                      </execution>
                      <execution>
                          <phase>generate-resources</phase>
                          <id>genkey</id>
                          <goals>
                              <goal>generateKeyPair</goal>
                          </goals>
                      </execution>
                  </executions>
                  <configuration>
                      <keystore>${project.build.directory}/jetty-ssl.keystore</keystore>
                      <dname>cn=my.hostname.tld</dname>
                      <keypass>jetty6</keypass>
                      <storepass>jetty6</storepass>
                      <alias>jetty6</alias>
                      <keyalg>RSA</keyalg>
                  </configuration>
              </plugin>
      

      【讨论】:

      • 我已经在 Stackoverflow 上看到了这个回复。它适用于相当旧版本的 Jetty。您提到的两个插件都有更新的版本,其配置有很大不同,因此我问。如果您可以相应地更新您的回复,那就太好了。
      • 是的,很想看到 org.eclipse.jetty/jetty-maven-plugin 的版本!
      猜你喜欢
      • 2013-05-19
      • 1970-01-01
      • 2015-06-12
      • 2012-08-10
      • 1970-01-01
      • 2011-12-14
      • 1970-01-01
      • 2015-06-06
      • 2021-07-03
      相关资源
      最近更新 更多