使用Maven Jetty插件生成带有嵌入式Jetty的jar? [英] Generate a jar with embedded Jetty using maven jetty plugin?

查看:188
本文介绍了使用Maven Jetty插件生成带有嵌入式Jetty的jar?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用来自mvn jetty:run 目标nofollow> maven jetty插件开始使用maven构建的Web应用程序项目。

I use the mvn jetty:run goal from the maven jetty plugin to start my web application project, built using maven.

现在,我想创建一个带有嵌入式Jetty的胖罐,以便我将能够使用 java -jar 启动我的应用。

Now I want to create a fat jar with embedded Jetty so that I will be able to start my app using java -jar.

有没有办法使用Maven码头插件生成带有嵌入式码头的胖子罐?

Is there a way to use the maven jetty plugin to generate a fat jar with embedded Jetty?

推荐答案

MarianP已在评论中回答了您的问题。

MarianP already answered your question in the comment.

在pom.xml中添加码头依赖项

Add your jetty dependencies in your pom.xml

<!-- jetty dependencies -->
<dependency>
  <groupId>org.eclipse.jetty</groupId>
  <artifactId>jetty-server</artifactId>
  <version>9.2.5.v20141112</version>
</dependency>
<dependency>
  <groupId>org.eclipse.jetty</groupId>
  <artifactId>jetty-servlet</artifactId>
  <version>9.2.5.v20141112</version>
</dependency>
<dependency>
  <groupId>org.eclipse.jetty.websocket</groupId>
  <artifactId>websocket-server</artifactId>
  <version>9.2.5.v20141112</version>
</dependency>

像这样添加阴影插件:

  <!-- maven shade plugin, executable uber Jar -->
  <plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-shade-plugin</artifactId>
    <version>2.2</version>
    <executions>
      <execution>
        <phase>package</phase>
        <goals>
          <goal>shade</goal>
        </goals>
        <configuration>
          <transformers>
            <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
              <mainClass>YourMainClassHere</mainClass>
            </transformer>
            <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
              <resource>META-INF/spring.handlers</resource>
            </transformer>
            <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
              <resource>META-INF/spring.schemas</resource>
            </transformer>
          </transformers>
        </configuration>
      </execution>
    </executions>
  </plugin>

然后从main()添加服务器/客户端

Then add your server/client from your main()

这篇关于使用Maven Jetty插件生成带有嵌入式Jetty的jar?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆