JackOUT

Untitled

Dec 19th, 2020
244
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 12.49 KB | None | 0 0
  1. <?xml version="1.0" encoding="UTF-8"?>
  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. <modelVersion>4.0.0</modelVersion>
  6.  
  7. <!--
  8. We use Maven to build our plugin and Maven uses pom.xml to configure
  9. itself.
  10.  
  11. This file is the heart and matter of everything that has to do
  12. with how your plugin connects with other libraries and exports itself
  13. when you want to publish it.
  14.  
  15. Please only edit options below, as the above declaration is machine
  16. generated and not intended for user changes.
  17. -->
  18.  
  19. <!-- ############################################################################### -->
  20. <!-- Basic plugin configuration, start here -->
  21. <!-- ############################################################################### -->
  22.  
  23. <!--
  24. The Group ID represents the main package of your plugin
  25.  
  26. The Artifact ID represents the name of your plugin.
  27. Traditionally, it is suggested to keep this name lowercase.
  28. If your plugin uses spaces, please replace them with dashes (-) instead.
  29.  
  30. The Name represents the full name of your plugin
  31.  
  32. The Version is current version of your plugin. You want to update this continuously
  33. -->
  34.  
  35. <groupId>games.coob</groupId>
  36. <artifactId>orion</artifactId>
  37. <name>Orion</name>
  38. <version>1.0.0</version>
  39.  
  40. <!-- ############################################################################### -->
  41.  
  42. <!--
  43. Configure some of the Maven settings. We also define
  44. our new variables here such as the main class or Java version
  45. for our plugin.
  46.  
  47. You can use those variables in your src/resources folder. See
  48. plugin.yml folder there for example usage.
  49. -->
  50. <properties>
  51.  
  52. <!-- The full path to your plugin's main class, so that Spigot can find and load it -->
  53. <main.class>games.coob.orion.OrionPlugin</main.class>
  54.  
  55. <!-- The Foundation version - change to latest version from https://github.com/kangarko/Foundation/releases -->
  56. <foundation.version>5.7.6</foundation.version>
  57. <packetwrapper.version>5262e36c72</packetwrapper.version>
  58.  
  59. <!-- The Java version your plugin uses, see bstats.org for what most servers have and use that -->
  60. <java.version>1.8</java.version>
  61.  
  62. <!-- How letters in your code should be saved on your disk, leave to UTF-8 to support all languages -->
  63. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  64. </properties>
  65.  
  66. <!--
  67. Configure where should Maven look for other libraries and plugins we
  68. want to use in our plugin. Those libraries and plugins can you then
  69. reference below in the dependencies section.
  70.  
  71. Each repository has two parts - the id and url. The id does not
  72. really matter, however the URL must contain a valid Maven repository
  73. where the dependency is "installed" (that's why we call the goal "install"
  74. because we want to install our plugin on our PC as well so that we can
  75. use it in our other plugins together without linking it as a dependency)
  76.  
  77. By default we use the Spigot repository for Spigot and the central Maven
  78. repo for many other plugins.
  79. -->
  80. <repositories>
  81. <repository>
  82. <id>spigotmc-repo</id>
  83. <url>https://hub.spigotmc.org/nexus/content/groups/public/</url>
  84. </repository>
  85. <repository>
  86. <id>jitpack.io</id>
  87. <url>https://jitpack.io</url>
  88. </repository>
  89. <repository>
  90. <id>sonatype</id>
  91. <url>https://oss.sonatype.org/content/groups/public/</url>
  92. </repository>
  93. </repositories>
  94.  
  95. <!--
  96. Configure what other libraries or plugins are we going to use in this plugin.
  97.  
  98. As a starting point, we are importing the Spigot API and Foundation.
  99. -->
  100. <dependencies>
  101.  
  102. <!--
  103. Import the Spigot API since it's necessary for our plugin
  104.  
  105. Make sure you change the version to the latest version you want to use for your plugin.
  106. -->
  107. <dependency>
  108. <groupId>org.spigotmc</groupId>
  109. <artifactId>spigot-api</artifactId>
  110.  
  111. <!-- Change this to the latest version to stay up to date -->
  112. <version>1.16.4-R0.1-SNAPSHOT</version>
  113.  
  114. <!--
  115. The scope indicates if this library should be packaged together with our plugin
  116. when we want to publish it.
  117.  
  118. Set this to "compile" if you want all classes from this library to be copied
  119. to your plugin's jar, otherwise set this to "provided".
  120. -->
  121. <scope>provided</scope>
  122. </dependency>
  123.  
  124. <!--
  125. Import the Foundation library to kickstart our plugin development
  126. -->
  127. <dependency>
  128. <groupId>com.github.kangarko</groupId>
  129. <artifactId>Foundation</artifactId>
  130. <version>${foundation.version}</version>
  131. <!-- Include Foundation and its dependencies. There are exceptions, see shade plugin below -->
  132. <scope>compile</scope>
  133. </dependency>
  134.  
  135. <dependency>
  136. <groupId>com.github.Slikey</groupId>
  137. <artifactId>EffectLib</artifactId>
  138. <version>-f76a4d6074-1</version>
  139. </dependency>
  140.  
  141. <dependency>
  142. <groupId>com.github.dmulloy2</groupId>
  143. <artifactId>PacketWrapper</artifactId>
  144. <version>${packetwrapper.version}</version>
  145. </dependency>
  146. </dependencies>
  147.  
  148. <!--
  149. Configure what happens when we are building this project (Maven compiles our code into bytecode
  150. for us automatically).
  151. -->
  152. <build>
  153.  
  154. <!--
  155. When we are building your plugins, what plugins should we use during this process?
  156.  
  157. The plugins here extend the functionality of Maven, just like your plugin enhances Minecraft
  158. These are not Minecraft plugins, but only Maven plugins!
  159. -->
  160. <plugins>
  161.  
  162. <!--
  163. The first and the most essential plugin is the compiler, that translates your
  164. human readable code into bytecode.
  165. -->
  166. <plugin>
  167. <groupId>org.apache.maven.plugins</groupId>
  168. <artifactId>maven-compiler-plugin</artifactId>
  169. <!--
  170. You want to check and update the latest version periodically from
  171. https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-compiler-plugin
  172. -->
  173. <version>3.8.1</version>
  174. <configuration>
  175. <source>${java.version}</source>
  176. <target>${java.version}</target>
  177. </configuration>
  178. </plugin>
  179.  
  180. <!--
  181. The second plugin is the shade plugin, packaging every library with
  182. the "compile" scope (see dependencies)
  183. -->
  184. <plugin>
  185. <groupId>org.apache.maven.plugins</groupId>
  186. <artifactId>maven-shade-plugin</artifactId>
  187. <!--
  188. You want to check and update the latest version periodically from
  189. https://mvnrepository.com/artifact/org.apache.maven.plugins/maven-shade-plugin
  190. -->
  191. <version>3.2.4</version>
  192. <executions>
  193. <execution>
  194. <phase>package</phase>
  195. <goals>
  196. <goal>shade</goal>
  197. </goals>
  198. <!--
  199. By default we configure the Foundation to include itself and all classes when
  200. we set the scope to compile (see above).
  201.  
  202. There are many libraries from Foundation we will not need to use, and here
  203. can you specify which ones to exclude. Please leave the default ones as they are.
  204. -->
  205. <configuration>
  206. <createDependencyReducedPom>false</createDependencyReducedPom>
  207. <finalName>${project.name}-${project.version}</finalName>
  208. <artifactSet>
  209. <includes>
  210. <include>org.mineacademy:Game*</include>
  211. <include>org.mineacademy:Foundation*</include>
  212. <include>com.github.dmulloy2:PacketWrapper*</include>
  213. </includes>
  214. <excludes>
  215. <exclude>org.mineacademy:GameAPI*</exclude>
  216. </excludes>
  217. </artifactSet>
  218. <relocations>
  219. <relocation>
  220. <patern>com.comphenix.packetwrapper</patern>
  221. <shadedPatern>${project.groupId}.${project.artifactId}.lib.packetwrapper</shadedPatern>
  222. </relocation>
  223. <relocation>
  224. <pattern>com.github.kangarko</pattern>
  225. <shadedPattern>${project.groupId}.${project.artifactId}.lib</shadedPattern>
  226. <excludes>
  227. <exclude>org.mineacademy.${project.artifactId}.*</exclude>
  228. <exclude>org.mineacademy.gameapi.*</exclude>
  229. <exclude>org.mineacademy.boss.*</exclude>
  230. <exclude>org.mineacademy.worldeditbridge.*</exclude>
  231. </excludes>
  232. </relocation>
  233. </relocations>
  234. </configuration>
  235. </execution>
  236. </executions>
  237. </plugin>
  238. <!--
  239. This plugin will use ProGuard obfuscator to prevent others
  240. from understanding your compiled program.
  241. -->
  242. <plugin>
  243. <groupId>com.github.wvengen</groupId>
  244. <artifactId>proguard-maven-plugin</artifactId>
  245. <!--
  246. Make sure to check for new versions from
  247. https://mvnrepository.com/artifact/com.github.wvengen/proguard-maven-plugin
  248. -->
  249. <version>2.3.1</version>
  250. <dependencies>
  251. <dependency>
  252. <groupId>net.sf.proguard</groupId>
  253. <artifactId>proguard-base</artifactId>
  254. <!--
  255. Make sure to check for new versions from
  256. https://mvnrepository.com/artifact/net.sf.proguard/proguard-base
  257. -->
  258. <version>6.3.0beta1</version>
  259. </dependency>
  260. </dependencies>
  261. <executions>
  262. <execution>
  263. <phase>package</phase>
  264. <goals>
  265. <goal>proguard</goal>
  266. </goals>
  267. </execution>
  268. </executions>
  269. <configuration>
  270. <libs>
  271. <lib>${java.home}/lib/rt.jar</lib>
  272. <lib>${java.home}/lib/jce.jar</lib>
  273. </libs>
  274. </configuration>
  275. </plugin>
  276. </plugins>
  277.  
  278. <!--
  279. During the build, we are going to scan all files in src/main/resources
  280. folder such as plugin.yml and your settings files and replace all variables
  281. such as ${main.class} with their proper values.
  282.  
  283. You can use native variables such as ${project.X} or the ones you defined above
  284. in the properties section.
  285. -->
  286. <resources>
  287. <resource>
  288. <directory>src/main/resources</directory>
  289. <filtering>true</filtering>
  290. </resource>
  291. </resources>
  292. </build>
  293.  
  294. </project>
Advertisement
Add Comment
Please, Sign In to add comment