jonahkh
2020-05-29 5eeffe88821b8fa7427a4d92b44a88cefec1e700
commit | author | age
4829e4 1 <?xml version="1.0" encoding="UTF-8"?>
J 2 <project xmlns="http://maven.apache.org/POM/4.0.0"
3          xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
4          xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
5
6   <modelVersion>4.0.0</modelVersion>
7
8   <groupId>io.vertx</groupId>
9   <artifactId>maven-simplest</artifactId>
10   <version>3.9.0</version>
11
12   <properties>
13     <!-- the main class -->
14     <exec.mainClass>io.vertx.example.HelloWorldEmbedded</exec.mainClass>
15   </properties>
16
17   <dependencies>
18     <dependency>
19       <groupId>io.vertx</groupId>
20       <artifactId>vertx-core</artifactId>
21       <version>${project.version}</version>
22     </dependency>
23   </dependencies>
24
25   <build>
26
27     <pluginManagement>
28       <plugins>
29         <!-- We specify the Maven compiler plugin as we need to set it to Java 1.8 -->
30         <plugin>
31           <artifactId>maven-compiler-plugin</artifactId>
32           <version>3.1</version>
33           <configuration>
34             <source>1.8</source>
35             <target>1.8</target>
36           </configuration>
37         </plugin>
38       </plugins>
39     </pluginManagement>
40
41     <!--
42     You only need the part below if you want to build your application into a fat executable jar.
43     This is a jar that contains all the dependencies required to run it, so you can just run it with
44     java -jar
45     -->
46     <plugins>
47       <plugin>
48         <groupId>org.apache.maven.plugins</groupId>
49         <artifactId>maven-shade-plugin</artifactId>
50         <version>2.3</version>
51         <executions>
52           <execution>
53             <phase>package</phase>
54             <goals>
55               <goal>shade</goal>
56             </goals>
57             <configuration>
58               <transformers>
59                 <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer">
60                   <manifestEntries>
61                     <Main-Class>${exec.mainClass}</Main-Class>
62                   </manifestEntries>
63                 </transformer>
64                 <transformer implementation="org.apache.maven.plugins.shade.resource.AppendingTransformer">
65                   <resource>META-INF/services/io.vertx.core.spi.VerticleFactory</resource>
66                 </transformer>
67               </transformers>
68               <artifactSet>
69               </artifactSet>
70               <outputFile>${project.build.directory}/${project.artifactId}-${project.version}-fat.jar</outputFile>
71             </configuration>
72           </execution>
73         </executions>
74       </plugin>
75
76       <plugin>
77         <groupId>org.codehaus.mojo</groupId>
78         <artifactId>exec-maven-plugin</artifactId>
79         <version>1.4.0</version>
80         <executions>
81           <execution>
82             <!-- run the application using the fat jar -->
83             <id>run-app</id>
84             <goals>
85               <goal>exec</goal>
86             </goals>
87             <configuration>
88               <executable>java</executable>
89               <arguments>
90                 <argument>-jar</argument>
91                 <argument>target/${project.artifactId}-${project.version}-fat.jar</argument>
92               </arguments>
93             </configuration>
94           </execution>
95         </executions>
96       </plugin>
97     </plugins>
98   </build>
99
100   <profiles>
101     <profile>
102       <id>staging</id>
103       <repositories>
104         <repository>
105           <id>staging</id>
106           <url>https://oss.sonatype.org/content/repositories/iovertx-3868/</url>
107         </repository>
108       </repositories>
109     </profile>
110   </profiles>
111
112 </project>