简体   繁体   中英

How to make executable file for deploy Maven java web project with rest api to server

I Made a java maven project for rest api .. now i need to deploy it on server .. that's why i wanted to make a executable jar .. How can i make this....?

Here i used Jersey-2 for rest api. 项目文件结构

Maven Plugin:

 <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-shade-plugin</artifactId>
                <version>3.1.1</version>
                <executions>
                    <execution>
                        <phase>package</phase>
                        <goals>
                            <goal>shade</goal>
                        </goals>
                        <configuration>
                            <transformers>
                                <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
                                    <mainClass>net.javatutorial.tutorials.services.FileUploadService</mainClass>
                                </transformer>
                            </transformers>
                        </configuration>
                    </execution>
                </executions>
            </plugin>

If you want an executable jar, your Jersey app needs to be a standalone app, which is an app that runs from a "main" class with a main method. To easily create a standalone app, you can use the Maven archetype mentioned in the Jersey Getting Started . (You can see the generated files from the archetype in this post ).

mvn archetype:generate -DarchetypeArtifactId=jersey-quickstart-grizzly2 \
-DarchetypeGroupId=org.glassfish.jersey.archetypes -DinteractiveMode=false \
-DgroupId=com.example -DartifactId=simple-service -Dpackage=com.example \
-DarchetypeVersion=2.27

Once you have your standalone app, then you can build it with the maven-shade-plugin like you are currently doing. The Main class is what you should specify in the <mainClass> element. One thing I should mention is that you should also use the ServicesResourceTransformer to concatenate the services files 1


1 - See Jersey fails when creating uber jar with maven-assembly-plugin

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM