byte-buddy-parent-1.12.23.pom 57 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
  3. <modelVersion>4.0.0</modelVersion>
  4. <groupId>net.bytebuddy</groupId>
  5. <artifactId>byte-buddy-parent</artifactId>
  6. <version>1.12.23</version>
  7. <packaging>pom</packaging>
  8. <inceptionYear>2014</inceptionYear>
  9. <name>Byte Buddy (parent)</name>
  10. <description>
  11. Byte Buddy is a Java library for creating Java classes at run time.
  12. The parent artifact contains configuration information that concern all modules.
  13. </description>
  14. <url>https://bytebuddy.net</url>
  15. <!--
  16. There are several build profiles available:
  17. - extras: Creates additional artifacts containing source files and javadoc. (activated on release)
  18. - gpg: Sign all artifacts using gpg. (activated on release)
  19. - checks: Applies style checks to the source files. (activated by default, activated on release)
  20. - integration: Runs additional unit tests that are long-running (activated on CI server)
  21. - analysis: Executes static code analysis (activated on CI server)
  22. - android: Builds an Android test application. An Android SDK is required for doing so. (excluded from release)
  23. - native-compile: Compiles the native extensions required by Byte Buddy agent.
  24. It is also possible to build Byte Buddy against a specific byte code level. By default, Byte Buddy is Java 5 compatible
  25. but requires Java 6 to build and to run tests: By activating a profile javaX where X is a specific version number,
  26. tests and source are compiled to a differing byte code level.
  27. Additionally, the following reports are available via Maven:
  28. - jacoco:prepare-agent verify jacoco:report - Computes coverage for test suite (all modules)
  29. - org.pitest:pitest-maven:mutationCoverage - Runs mutation tests (all modules)
  30. - spotbugs:spotbugs spotbugs:gui - Runs spotbugs and shows a report in a graphical interface (module specific)
  31. - com.github.ferstl:jitwatch-jarscan-maven-plugin:scan - Finds all methods above HotSpot's inlining threshold
  32. - versions:update-properties - Automated dependency version update.
  33. At last, two pseudo-profiles are available that allow for handling checksum data for all downloaded artifacts.
  34. These profiles are only effective if the Maven wrapper is used, which is configured to install the Maven
  35. checksum extension:
  36. - checksum-collect: collects checksums for all used artifacts.
  37. - checksum-enforce: enforces that all downloaded artifacts represent a known checksum
  38. -->
  39. <modules>
  40. <module>byte-buddy</module>
  41. <module>byte-buddy-dep</module>
  42. <module>byte-buddy-benchmark</module>
  43. <module>byte-buddy-agent</module>
  44. <module>byte-buddy-android</module>
  45. <module>byte-buddy-android-test</module>
  46. <module>byte-buddy-maven-plugin</module>
  47. <module>byte-buddy-gradle-plugin</module>
  48. </modules>
  49. <properties>
  50. <copyright.holder>Rafael Winterhalter</copyright.holder>
  51. <bytebuddy.extras>false</bytebuddy.extras>
  52. <bytebuddy.integration>false</bytebuddy.integration>
  53. <bytebuddy.experimental>false</bytebuddy.experimental>
  54. <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
  55. <project.build.outputTimestamp>1675590562</project.build.outputTimestamp>
  56. <sourcecode.main.version>1.5</sourcecode.main.version>
  57. <sourcecode.test.version>1.6</sourcecode.test.version>
  58. <bytecode.main.version>1.5</bytecode.main.version>
  59. <bytecode.test.version>1.6</bytecode.test.version>
  60. <pitest.target>net.bytebuddy</pitest.target>
  61. <nexus.url>https://s01.oss.sonatype.org</nexus.url>
  62. <version.asm>9.4</version.asm>
  63. <version.jna>5.12.1</version.jna>
  64. <version.junit>4.13.2</version.junit>
  65. <version.mockito>2.28.2</version.mockito>
  66. <version.plugin.clean>3.2.0</version.plugin.clean>
  67. <version.plugin.bundle>5.1.7</version.plugin.bundle>
  68. <version.plugin.compiler>3.10.1</version.plugin.compiler>
  69. <version.plugin.install>3.0.1</version.plugin.install>
  70. <version.plugin.deploy>3.0.0</version.plugin.deploy>
  71. <version.plugin.staging>1.6.13</version.plugin.staging>
  72. <version.plugin.versions>2.11.0</version.plugin.versions>
  73. <version.plugin.javadoc>3.4.0</version.plugin.javadoc>
  74. <version.plugin.source>3.2.1</version.plugin.source>
  75. <version.plugin.shade>3.3.0</version.plugin.shade>
  76. <version.plugin.gpg>3.0.1</version.plugin.gpg>
  77. <version.plugin.jxr>3.2.0</version.plugin.jxr>
  78. <version.plugin.buildhelper>3.3.0</version.plugin.buildhelper>
  79. <version.plugin.jar>3.2.2</version.plugin.jar>
  80. <version.plugin.site>3.12.0</version.plugin.site>
  81. <version.plugin.exec>3.1.0</version.plugin.exec>
  82. <version.plugin.plugin>3.6.4</version.plugin.plugin>
  83. <version.plugin.release>3.0.0-M7</version.plugin.release>
  84. <version.plugin.resources>3.2.0</version.plugin.resources>
  85. <version.plugin.assembly>3.4.2</version.plugin.assembly>
  86. <version.plugin.dependency>3.3.0</version.plugin.dependency>
  87. <version.plugin.help>3.2.0</version.plugin.help>
  88. <version.plugin.surefire>2.22.2</version.plugin.surefire>
  89. <version.plugin.pitest>1.9.2</version.plugin.pitest>
  90. <version.plugin.animal-sniffer>1.21</version.plugin.animal-sniffer>
  91. <version.plugin.enforcer>3.1.0</version.plugin.enforcer>
  92. <version.plugin.jacoco>0.8.8</version.plugin.jacoco>
  93. <version.plugin.coveralls>4.3.0</version.plugin.coveralls>
  94. <version.plugin.checkstyle>3.1.2</version.plugin.checkstyle>
  95. <version.plugin.jitwatch>1.1</version.plugin.jitwatch>
  96. <version.plugin.spotbugs>4.2.3</version.plugin.spotbugs>
  97. <version.plugin.modulemaker>1.9</version.plugin.modulemaker>
  98. <version.plugin.license>3.0</version.plugin.license>
  99. <version.plugin.japicmp>0.15.7</version.plugin.japicmp>
  100. <version.plugin.antrun>3.1.0</version.plugin.antrun>
  101. <version.checkstyle>9.3</version.checkstyle>
  102. <version.android.sdk>4.1.1.4</version.android.sdk>
  103. <version.utility.findbugs>3.0.1</version.utility.findbugs>
  104. <version.utility.jsr305>3.0.2</version.utility.jsr305>
  105. <version.jmh>1.35</version.jmh>
  106. <version.cglib>3.3.0</version.cglib>
  107. <version.javassist>3.29.0-GA</version.javassist>
  108. <spotbugs.skip>false</spotbugs.skip>
  109. <jacoco.skip>false</jacoco.skip>
  110. <japicmp.skip>false</japicmp.skip>
  111. <modulemaker.skip>false</modulemaker.skip>
  112. <javadoc.download.skip>false</javadoc.download.skip>
  113. <repository.url>git@github.com:raphw/byte-buddy.git</repository.url>
  114. </properties>
  115. <licenses>
  116. <license>
  117. <name>Apache License, Version 2.0</name>
  118. <url>https://www.apache.org/licenses/LICENSE-2.0.txt</url>
  119. <distribution>repo</distribution>
  120. <comments>A business-friendly OSS license</comments>
  121. </license>
  122. </licenses>
  123. <developers>
  124. <developer>
  125. <id>raphw</id>
  126. <name>Rafael Winterhalter</name>
  127. <email>rafael.wth@gmail.com</email>
  128. <url>https://rafael.codes</url>
  129. <roles>
  130. <role>developer</role>
  131. </roles>
  132. <timezone>+1</timezone>
  133. </developer>
  134. </developers>
  135. <issueManagement>
  136. <system>github.com</system>
  137. <url>https://github.com/raphw/byte-buddy/issues</url>
  138. </issueManagement>
  139. <scm>
  140. <connection>scm:git:${repository.url}</connection>
  141. <developerConnection>scm:git:${repository.url}</developerConnection>
  142. <url>${repository.url}</url>
  143. <tag>byte-buddy-1.12.23</tag>
  144. </scm>
  145. <dependencies>
  146. <!-- Allows the suppression of spotbugs false-positives by annotations without adding an actual dependency. -->
  147. <dependency>
  148. <groupId>com.google.code.findbugs</groupId>
  149. <artifactId>findbugs-annotations</artifactId>
  150. <version>${version.utility.findbugs}</version>
  151. <scope>provided</scope>
  152. </dependency>
  153. <!-- Allow for marking nullability of values.-->
  154. <dependency>
  155. <groupId>com.google.code.findbugs</groupId>
  156. <artifactId>jsr305</artifactId>
  157. <version>${version.utility.jsr305}</version>
  158. <scope>provided</scope>
  159. </dependency>
  160. </dependencies>
  161. <build>
  162. <plugins>
  163. <!-- Define release properties. -->
  164. <plugin>
  165. <groupId>org.apache.maven.plugins</groupId>
  166. <artifactId>maven-release-plugin</artifactId>
  167. <version>${version.plugin.release}</version>
  168. <configuration>
  169. <useReleaseProfile>false</useReleaseProfile>
  170. <releaseProfiles>extras,gpg,gradle-release</releaseProfiles>
  171. <autoVersionSubmodules>true</autoVersionSubmodules>
  172. <tagNameFormat>byte-buddy-@{project.version}</tagNameFormat>
  173. </configuration>
  174. </plugin>
  175. <!-- Enable mutation testing. -->
  176. <plugin>
  177. <groupId>org.pitest</groupId>
  178. <artifactId>pitest-maven</artifactId>
  179. <version>${version.plugin.pitest}</version>
  180. <configuration>
  181. <targetClasses>
  182. <param>${pitest.target}.*</param>
  183. </targetClasses>
  184. <targetTests>
  185. <param>${pitest.target}.*</param>
  186. </targetTests>
  187. </configuration>
  188. </plugin>
  189. <!-- Configure Jacoco support for evaluating test case coverage. -->
  190. <plugin>
  191. <groupId>org.jacoco</groupId>
  192. <artifactId>jacoco-maven-plugin</artifactId>
  193. <version>${version.plugin.jacoco}</version>
  194. <configuration>
  195. <skip>${jacoco.skip}</skip>
  196. <includes>
  197. <include>net/bytebuddy/**</include>
  198. </includes>
  199. <excludes>
  200. <!-- Do not include JMH generated classes (both modern and legacy JMH).-->
  201. <exclude>net/bytebuddy/benchmark/generated/*</exclude>
  202. <exclude>net/bytebuddy/benchmark/jmh_generated/*</exclude>
  203. <!-- Avoid adding synthetic members to test classes as test assert class members. -->
  204. <exclude>*Test*</exclude>
  205. <exclude>*test*</exclude>
  206. </excludes>
  207. </configuration>
  208. </plugin>
  209. <!-- Generate coveralls reports from CI server. -->
  210. <plugin>
  211. <groupId>org.eluder.coveralls</groupId>
  212. <artifactId>coveralls-maven-plugin</artifactId>
  213. <version>${version.plugin.coveralls}</version>
  214. <configuration>
  215. <sourceDirectories>
  216. <sourceDirectory>${project.basedir}/byte-buddy-dep/src/main/java-6</sourceDirectory>
  217. </sourceDirectories>
  218. </configuration>
  219. </plugin>
  220. <!-- Also allow for manual spotbugs execution. Note that the generated warnings do not always apply for Byte Buddy's use case. -->
  221. <plugin>
  222. <groupId>com.github.spotbugs</groupId>
  223. <artifactId>spotbugs-maven-plugin</artifactId>
  224. <version>${version.plugin.spotbugs}</version>
  225. <configuration>
  226. <skip>${spotbugs.skip}</skip>
  227. <effort>Max</effort>
  228. <threshold>Low</threshold>
  229. <xmlOutput>true</xmlOutput>
  230. <failOnError>false</failOnError>
  231. <spotbugsXmlOutputDirectory>${project.build.directory}/spotbugs</spotbugsXmlOutputDirectory>
  232. <excludeFilterFile>${project.basedir}/../spotbugs-exclude.xml</excludeFilterFile>
  233. </configuration>
  234. </plugin>
  235. <!-- Enable scanning for methods above the inlining threshold (JDK 7+) -->
  236. <plugin>
  237. <groupId>com.github.ferstl</groupId>
  238. <artifactId>jitwatch-jarscan-maven-plugin</artifactId>
  239. <version>${version.plugin.jitwatch}</version>
  240. </plugin>
  241. <!-- Add license headers to all files. -->
  242. <plugin>
  243. <groupId>com.mycila</groupId>
  244. <artifactId>license-maven-plugin</artifactId>
  245. <version>${version.plugin.license}</version>
  246. <inherited>false</inherited>
  247. <configuration>
  248. <header>${project.basedir}/NOTICE</header>
  249. <aggregate>true</aggregate>
  250. <failIfMissing>true</failIfMissing>
  251. <encoding>${project.build.sourceEncoding}</encoding>
  252. <properties>
  253. <copyright.holder>${copyright.holder}</copyright.holder>
  254. </properties>
  255. <includes>
  256. <include>**/main/java/**/*.java</include>
  257. <include>**/main/java-*/**/*.java</include>
  258. <include>**/main/c/**/*.c</include>
  259. </includes>
  260. <strictCheck>true</strictCheck>
  261. <mapping>
  262. <java>SLASHSTAR_STYLE</java>
  263. </mapping>
  264. </configuration>
  265. <executions>
  266. <execution>
  267. <phase>package</phase>
  268. <goals>
  269. <goal>format</goal>
  270. </goals>
  271. </execution>
  272. </executions>
  273. </plugin>
  274. <!-- Setup plugin for deployment to Maven Central. -->
  275. <plugin>
  276. <groupId>org.sonatype.plugins</groupId>
  277. <artifactId>nexus-staging-maven-plugin</artifactId>
  278. <version>${version.plugin.staging}</version>
  279. <extensions>true</extensions>
  280. <configuration>
  281. <serverId>central</serverId>
  282. <nexusUrl>${nexus.url}</nexusUrl>
  283. <autoReleaseAfterClose>true</autoReleaseAfterClose>
  284. </configuration>
  285. </plugin>
  286. <!-- Allow for automated version updates. -->
  287. <plugin>
  288. <groupId>org.codehaus.mojo</groupId>
  289. <artifactId>versions-maven-plugin</artifactId>
  290. <version>${version.plugin.versions}</version>
  291. <configuration>
  292. <rulesUri>file://${session.executionRootDirectory}/version-rules.xml</rulesUri>
  293. </configuration>
  294. </plugin>
  295. </plugins>
  296. <pluginManagement>
  297. <plugins>
  298. <plugin>
  299. <groupId>org.apache.maven.plugins</groupId>
  300. <artifactId>maven-clean-plugin</artifactId>
  301. <version>${version.plugin.clean}</version>
  302. </plugin>
  303. <plugin>
  304. <groupId>org.apache.maven.plugins</groupId>
  305. <artifactId>maven-jar-plugin</artifactId>
  306. <version>${version.plugin.jar}</version>
  307. </plugin>
  308. <plugin>
  309. <groupId>org.apache.maven.plugins</groupId>
  310. <artifactId>maven-resources-plugin</artifactId>
  311. <version>${version.plugin.resources}</version>
  312. <configuration>
  313. <!-- Setting this property suppresses a warning on implicit setting the filter encoding. -->
  314. <encoding>${project.build.sourceEncoding}</encoding>
  315. </configuration>
  316. </plugin>
  317. <plugin>
  318. <groupId>org.apache.maven.plugins</groupId>
  319. <artifactId>maven-install-plugin</artifactId>
  320. <version>${version.plugin.install}</version>
  321. </plugin>
  322. <plugin>
  323. <groupId>org.apache.maven.plugins</groupId>
  324. <artifactId>maven-surefire-plugin</artifactId>
  325. <version>${version.plugin.surefire}</version>
  326. <configuration>
  327. <systemPropertyVariables>
  328. <net.bytebuddy.experimental>${bytebuddy.experimental}</net.bytebuddy.experimental>
  329. <net.bytebuddy.test.integration>${bytebuddy.integration}</net.bytebuddy.test.integration>
  330. </systemPropertyVariables>
  331. </configuration>
  332. </plugin>
  333. <plugin>
  334. <groupId>org.apache.maven.plugins</groupId>
  335. <artifactId>maven-deploy-plugin</artifactId>
  336. <version>${version.plugin.deploy}</version>
  337. <configuration>
  338. <updateReleaseInfo>true</updateReleaseInfo>
  339. </configuration>
  340. </plugin>
  341. <plugin>
  342. <groupId>org.apache.maven.plugins</groupId>
  343. <artifactId>maven-site-plugin</artifactId>
  344. <version>${version.plugin.site}</version>
  345. </plugin>
  346. <plugin>
  347. <groupId>org.apache.maven.plugins</groupId>
  348. <artifactId>maven-compiler-plugin</artifactId>
  349. <version>${version.plugin.compiler}</version>
  350. <inherited>true</inherited>
  351. <configuration>
  352. <source>${sourcecode.main.version}</source>
  353. <target>${bytecode.main.version}</target>
  354. <testSource>${sourcecode.test.version}</testSource>
  355. <testTarget>${bytecode.test.version}</testTarget>
  356. <encoding>${project.build.sourceEncoding}</encoding>
  357. <showWarnings>true</showWarnings>
  358. <showDeprecation>true</showDeprecation>
  359. <compilerArgument>-Xlint:all,-options,-processing</compilerArgument>
  360. </configuration>
  361. </plugin>
  362. <plugin>
  363. <groupId>org.apache.maven.plugins</groupId>
  364. <artifactId>maven-javadoc-plugin</artifactId>
  365. <version>${version.plugin.javadoc}</version>
  366. <configuration>
  367. <source>${sourcecode.main.version}</source>
  368. <failOnWarnings>true</failOnWarnings>
  369. <detectOfflineLinks>false</detectOfflineLinks>
  370. </configuration>
  371. </plugin>
  372. <plugin>
  373. <groupId>org.apache.maven.plugins</groupId>
  374. <artifactId>maven-plugin-plugin</artifactId>
  375. <version>${version.plugin.plugin}</version>
  376. <dependencies>
  377. <dependency>
  378. <groupId>org.ow2.asm</groupId>
  379. <artifactId>asm</artifactId>
  380. <version>${version.asm}</version>
  381. </dependency>
  382. <dependency>
  383. <groupId>org.ow2.asm</groupId>
  384. <artifactId>asm-commons</artifactId>
  385. <version>${version.asm}</version>
  386. </dependency>
  387. </dependencies>
  388. </plugin>
  389. <plugin>
  390. <groupId>org.apache.maven.plugins</groupId>
  391. <artifactId>maven-assembly-plugin</artifactId>
  392. <version>${version.plugin.assembly}</version>
  393. </plugin>
  394. <plugin>
  395. <groupId>org.apache.maven.plugins</groupId>
  396. <artifactId>maven-dependency-plugin</artifactId>
  397. <version>${version.plugin.dependency}</version>
  398. </plugin>
  399. <plugin>
  400. <groupId>org.apache.maven.plugins</groupId>
  401. <artifactId>maven-help-plugin</artifactId>
  402. <version>${version.plugin.help}</version>
  403. </plugin>
  404. </plugins>
  405. </pluginManagement>
  406. </build>
  407. <!-- Define explicit version to overcome problem with generated reports. -->
  408. <reporting>
  409. <plugins>
  410. <plugin>
  411. <groupId>org.apache.maven.plugins</groupId>
  412. <artifactId>maven-jxr-plugin</artifactId>
  413. <version>${version.plugin.jxr}</version>
  414. </plugin>
  415. </plugins>
  416. </reporting>
  417. <distributionManagement>
  418. <snapshotRepository>
  419. <id>central</id>
  420. <url>${nexus.url}/content/repositories/snapshots</url>
  421. </snapshotRepository>
  422. <repository>
  423. <id>central</id>
  424. <url>${nexus.url}/service/local/staging/deploy/maven2</url>
  425. </repository>
  426. </distributionManagement>
  427. <profiles>
  428. <!-- Runs the build with compatibility for Java 6 JVMs. -->
  429. <profile>
  430. <id>java6-compatibility</id>
  431. <activation>
  432. <activeByDefault>false</activeByDefault>
  433. <jdk>1.6</jdk>
  434. </activation>
  435. <properties>
  436. <version.asm.deprecated>7.1</version.asm.deprecated>
  437. <version.plugin.clean>3.0.0</version.plugin.clean>
  438. <version.plugin.bundle>2.5.4</version.plugin.bundle>
  439. <version.plugin.compiler>3.6.2</version.plugin.compiler>
  440. <version.plugin.install>2.5.2</version.plugin.install>
  441. <version.plugin.deploy>2.8.2</version.plugin.deploy>
  442. <version.plugin.staging>1.6.8</version.plugin.staging>
  443. <version.plugin.versions>2.4</version.plugin.versions>
  444. <version.plugin.source>2.4</version.plugin.source>
  445. <version.plugin.gpg>1.6</version.plugin.gpg>
  446. <version.plugin.jxr>2.5</version.plugin.jxr>
  447. <version.plugin.buildhelper>1.12</version.plugin.buildhelper>
  448. <version.plugin.jar>3.0.2</version.plugin.jar>
  449. <version.plugin.site>3.7.1</version.plugin.site>
  450. <version.plugin.exec>1.5.0</version.plugin.exec>
  451. <version.plugin.plugin>3.5.2</version.plugin.plugin>
  452. <version.plugin.resources>3.0.2</version.plugin.resources>
  453. <version.plugin.assembly>2.6</version.plugin.assembly>
  454. <version.plugin.dependency>2.10</version.plugin.dependency>
  455. <version.plugin.help>2.2</version.plugin.help>
  456. <version.plugin.animal-sniffer>1.16</version.plugin.animal-sniffer>
  457. <version.plugin.enforcer>1.4.1</version.plugin.enforcer>
  458. <version.plugin.jacoco>0.7.9</version.plugin.jacoco>
  459. <version.plugin.checkstyle>2.15</version.plugin.checkstyle>
  460. <version.plugin.spotbugs>3.1.0-RC8</version.plugin.spotbugs>
  461. <version.plugin.license>3.0</version.plugin.license>
  462. <version.plugin.shade>3.1.1</version.plugin.shade>
  463. <version.plugin.surefire>2.22.1</version.plugin.surefire>
  464. <version.plugin.javadoc>2.10.4</version.plugin.javadoc>
  465. <version.plugin.antrun>1.8</version.plugin.antrun>
  466. <version.checkstyle>6.1.1</version.checkstyle>
  467. <version.jmh>1.16</version.jmh>
  468. <version.cglib>3.2.12</version.cglib>
  469. <version.javassist>3.22.0-GA</version.javassist>
  470. <modulemaker.skip>true</modulemaker.skip>
  471. <spotbugs.skip>true</spotbugs.skip>
  472. <javadoc.download.skip>true</javadoc.download.skip>
  473. </properties>
  474. <modules>
  475. <module>byte-buddy</module>
  476. <module>byte-buddy-dep</module>
  477. <module>byte-buddy-benchmark</module>
  478. <module>byte-buddy-agent</module>
  479. <module>byte-buddy-android</module>
  480. <module>byte-buddy-maven-plugin</module>
  481. <module>byte-buddy-gradle-plugin</module>
  482. </modules>
  483. <build>
  484. <pluginManagement>
  485. <plugins>
  486. <plugin>
  487. <groupId>org.apache.maven.plugins</groupId>
  488. <artifactId>maven-plugin-plugin</artifactId>
  489. <version>${version.plugin.plugin}</version>
  490. <dependencies>
  491. <dependency>
  492. <groupId>org.ow2.asm</groupId>
  493. <artifactId>asm</artifactId>
  494. <version>${version.asm.deprecated}</version>
  495. </dependency>
  496. <dependency>
  497. <groupId>org.ow2.asm</groupId>
  498. <artifactId>asm-commons</artifactId>
  499. <version>${version.asm.deprecated}</version>
  500. </dependency>
  501. <dependency>
  502. <groupId>org.ow2.asm</groupId>
  503. <artifactId>asm-deprecated</artifactId>
  504. <version>${version.asm.deprecated}</version>
  505. </dependency>
  506. </dependencies>
  507. </plugin>
  508. </plugins>
  509. </pluginManagement>
  510. </build>
  511. </profile>
  512. <!-- Runs the build with compatibility for Java 7 JVMs. -->
  513. <profile>
  514. <id>java7-compatibility</id>
  515. <activation>
  516. <activeByDefault>false</activeByDefault>
  517. <jdk>1.7</jdk>
  518. </activation>
  519. <properties>
  520. <version.plugin.clean>3.1.0</version.plugin.clean>
  521. <version.plugin.bundle>3.5.1</version.plugin.bundle>
  522. <version.plugin.compiler>3.8.1</version.plugin.compiler>
  523. <version.plugin.staging>1.6.8</version.plugin.staging>
  524. <version.plugin.versions>2.8.1</version.plugin.versions>
  525. <version.plugin.jxr>3.1.1</version.plugin.jxr>
  526. <version.plugin.buildhelper>3.2.0</version.plugin.buildhelper>
  527. <version.plugin.site>3.11.0</version.plugin.site>
  528. <version.plugin.exec>3.0.0</version.plugin.exec>
  529. <version.plugin.assembly>3.3.0</version.plugin.assembly>
  530. <version.plugin.spotbugs>3.1.0-RC8</version.plugin.spotbugs>
  531. <version.plugin.javadoc>3.2.0</version.plugin.javadoc>
  532. <version.plugin.animal-sniffer>1.17</version.plugin.animal-sniffer>
  533. <version.plugin.enforcer>1.4.1</version.plugin.enforcer>
  534. <version.plugin.jacoco>0.7.9</version.plugin.jacoco>
  535. <version.plugin.checkstyle>3.0.0</version.plugin.checkstyle>
  536. <version.plugin.japicmp>0.13.1</version.plugin.japicmp>
  537. <version.plugin.shade>3.2.4</version.plugin.shade>
  538. <version.plugin.antrun>3.0.0</version.plugin.antrun>
  539. <version.checkstyle>6.19</version.checkstyle>
  540. <version.cglib>3.2.12</version.cglib>
  541. <version.javassist>3.23.2-GA</version.javassist>
  542. <spotbugs.skip>true</spotbugs.skip>
  543. <javadoc.download.skip>true</javadoc.download.skip>
  544. </properties>
  545. </profile>
  546. <!-- Runs the build with compatibility for Java 9 JVMs. -->
  547. <profile>
  548. <id>java9-compatibility</id>
  549. <activation>
  550. <activeByDefault>false</activeByDefault>
  551. <jdk>9</jdk>
  552. </activation>
  553. <properties>
  554. <project.build.outputTimestamp />
  555. <sourcecode.main.version>1.6</sourcecode.main.version>
  556. <sourcecode.test.version>1.6</sourcecode.test.version>
  557. <bytecode.main.version>1.6</bytecode.main.version>
  558. <bytecode.test.version>1.6</bytecode.test.version>
  559. </properties>
  560. </profile>
  561. <!-- Runs the build with compatibility for Java 10 JVMs. -->
  562. <profile>
  563. <id>java10-compatibility</id>
  564. <activation>
  565. <activeByDefault>false</activeByDefault>
  566. <jdk>10</jdk>
  567. </activation>
  568. <properties>
  569. <sourcecode.main.version>1.7</sourcecode.main.version>
  570. <sourcecode.test.version>1.7</sourcecode.test.version>
  571. <bytecode.main.version>1.7</bytecode.main.version>
  572. <bytecode.test.version>1.7</bytecode.test.version>
  573. </properties>
  574. </profile>
  575. <!-- Runs the build with compatibility for Java 11 JVMs. -->
  576. <profile>
  577. <id>java11-compatibility</id>
  578. <activation>
  579. <activeByDefault>false</activeByDefault>
  580. <jdk>11</jdk>
  581. </activation>
  582. <properties>
  583. <sourcecode.main.version>1.7</sourcecode.main.version>
  584. <sourcecode.test.version>1.7</sourcecode.test.version>
  585. <bytecode.main.version>1.7</bytecode.main.version>
  586. <bytecode.test.version>1.7</bytecode.test.version>
  587. </properties>
  588. </profile>
  589. <!-- Runs the build with compatibility for Java 12 JVMs. -->
  590. <profile>
  591. <id>java12-compatibility</id>
  592. <activation>
  593. <activeByDefault>false</activeByDefault>
  594. <jdk>12</jdk>
  595. </activation>
  596. <properties>
  597. <sourcecode.main.version>1.7</sourcecode.main.version>
  598. <sourcecode.test.version>1.7</sourcecode.test.version>
  599. <bytecode.main.version>1.7</bytecode.main.version>
  600. <bytecode.test.version>1.7</bytecode.test.version>
  601. </properties>
  602. </profile>
  603. <!-- Runs the build with compatibility for Java 13 JVMs. -->
  604. <profile>
  605. <id>java13-compatibility</id>
  606. <activation>
  607. <activeByDefault>false</activeByDefault>
  608. <jdk>13</jdk>
  609. </activation>
  610. <properties>
  611. <sourcecode.main.version>1.7</sourcecode.main.version>
  612. <sourcecode.test.version>1.7</sourcecode.test.version>
  613. <bytecode.main.version>1.7</bytecode.main.version>
  614. <bytecode.test.version>1.7</bytecode.test.version>
  615. </properties>
  616. </profile>
  617. <!-- Runs the build with compatibility for Java 14 JVMs. -->
  618. <profile>
  619. <id>java14-compatibility</id>
  620. <activation>
  621. <activeByDefault>false</activeByDefault>
  622. <jdk>14</jdk>
  623. </activation>
  624. <properties>
  625. <sourcecode.main.version>1.7</sourcecode.main.version>
  626. <sourcecode.test.version>1.7</sourcecode.test.version>
  627. <bytecode.main.version>1.7</bytecode.main.version>
  628. <bytecode.test.version>1.7</bytecode.test.version>
  629. </properties>
  630. </profile>
  631. <!-- Runs the build with compatibility for Java 15 JVMs. -->
  632. <profile>
  633. <id>java15-compatibility</id>
  634. <activation>
  635. <activeByDefault>false</activeByDefault>
  636. <jdk>15</jdk>
  637. </activation>
  638. <properties>
  639. <sourcecode.main.version>8</sourcecode.main.version>
  640. <sourcecode.test.version>8</sourcecode.test.version>
  641. <bytecode.main.version>8</bytecode.main.version>
  642. <bytecode.test.version>8</bytecode.test.version>
  643. </properties>
  644. </profile>
  645. <!-- Runs the build with compatibility for Java 16 JVMs. -->
  646. <profile>
  647. <id>java16-compatibility</id>
  648. <activation>
  649. <activeByDefault>false</activeByDefault>
  650. <jdk>16</jdk>
  651. </activation>
  652. <properties>
  653. <sourcecode.main.version>8</sourcecode.main.version>
  654. <sourcecode.test.version>8</sourcecode.test.version>
  655. <bytecode.main.version>8</bytecode.main.version>
  656. <bytecode.test.version>8</bytecode.test.version>
  657. <jacoco.skip>true</jacoco.skip>
  658. </properties>
  659. </profile>
  660. <!-- Runs the build with compatibility for Java 17 JVMs. -->
  661. <profile>
  662. <id>java17-compatibility</id>
  663. <activation>
  664. <activeByDefault>false</activeByDefault>
  665. <jdk>17</jdk>
  666. </activation>
  667. <properties>
  668. <sourcecode.main.version>8</sourcecode.main.version>
  669. <sourcecode.test.version>8</sourcecode.test.version>
  670. <bytecode.main.version>8</bytecode.main.version>
  671. <bytecode.test.version>8</bytecode.test.version>
  672. <jacoco.skip>true</jacoco.skip>
  673. </properties>
  674. </profile>
  675. <!-- Runs the build with compatibility for Java 18 JVMs. -->
  676. <profile>
  677. <id>java18-compatibility</id>
  678. <activation>
  679. <activeByDefault>false</activeByDefault>
  680. <jdk>18</jdk>
  681. </activation>
  682. <properties>
  683. <sourcecode.main.version>8</sourcecode.main.version>
  684. <sourcecode.test.version>8</sourcecode.test.version>
  685. <bytecode.main.version>8</bytecode.main.version>
  686. <bytecode.test.version>8</bytecode.test.version>
  687. <jacoco.skip>true</jacoco.skip>
  688. </properties>
  689. </profile>
  690. <!-- Runs the build with compatibility for Java 19 JVMs. -->
  691. <profile>
  692. <id>java19-compatibility</id>
  693. <activation>
  694. <activeByDefault>false</activeByDefault>
  695. <jdk>19</jdk>
  696. </activation>
  697. <properties>
  698. <sourcecode.main.version>8</sourcecode.main.version>
  699. <sourcecode.test.version>8</sourcecode.test.version>
  700. <bytecode.main.version>8</bytecode.main.version>
  701. <bytecode.test.version>8</bytecode.test.version>
  702. <jacoco.skip>true</jacoco.skip>
  703. </properties>
  704. </profile>
  705. <!-- Runs the build with compatibility for Java 20 JVMs. -->
  706. <profile>
  707. <id>java20-compatibility</id>
  708. <activation>
  709. <activeByDefault>false</activeByDefault>
  710. <jdk>20</jdk>
  711. </activation>
  712. <properties>
  713. <sourcecode.main.version>8</sourcecode.main.version>
  714. <sourcecode.test.version>8</sourcecode.test.version>
  715. <bytecode.main.version>8</bytecode.main.version>
  716. <bytecode.test.version>8</bytecode.test.version>
  717. <jacoco.skip>true</jacoco.skip>
  718. </properties>
  719. </profile>
  720. <!-- Builds using a byte code target for Java 6. -->
  721. <profile>
  722. <id>java6</id>
  723. <activation>
  724. <activeByDefault>false</activeByDefault>
  725. </activation>
  726. <properties>
  727. <bytecode.main.version>1.6</bytecode.main.version>
  728. </properties>
  729. </profile>
  730. <!-- Builds using a byte code target for Java 7. -->
  731. <profile>
  732. <id>java7</id>
  733. <activation>
  734. <activeByDefault>false</activeByDefault>
  735. </activation>
  736. <properties>
  737. <bytecode.main.version>1.7</bytecode.main.version>
  738. <bytecode.test.version>1.7</bytecode.test.version>
  739. </properties>
  740. </profile>
  741. <!-- Builds using a byte code target for Java 8. -->
  742. <profile>
  743. <id>java8</id>
  744. <activation>
  745. <activeByDefault>false</activeByDefault>
  746. </activation>
  747. <properties>
  748. <bytecode.main.version>1.8</bytecode.main.version>
  749. <bytecode.test.version>1.8</bytecode.test.version>
  750. </properties>
  751. </profile>
  752. <!-- Builds using a byte code target for Java 9. -->
  753. <profile>
  754. <id>java9</id>
  755. <activation>
  756. <activeByDefault>false</activeByDefault>
  757. </activation>
  758. <properties>
  759. <bytecode.main.version>9</bytecode.main.version>
  760. <bytecode.test.version>9</bytecode.test.version>
  761. </properties>
  762. </profile>
  763. <!-- Builds using a byte code target for Java 10. -->
  764. <profile>
  765. <id>java10</id>
  766. <activation>
  767. <activeByDefault>false</activeByDefault>
  768. </activation>
  769. <properties>
  770. <bytecode.main.version>10</bytecode.main.version>
  771. <bytecode.test.version>10</bytecode.test.version>
  772. </properties>
  773. </profile>
  774. <!-- Builds using a byte code target for Java 11. -->
  775. <profile>
  776. <id>java11</id>
  777. <activation>
  778. <activeByDefault>false</activeByDefault>
  779. </activation>
  780. <properties>
  781. <bytecode.main.version>11</bytecode.main.version>
  782. <bytecode.test.version>11</bytecode.test.version>
  783. </properties>
  784. </profile>
  785. <!-- Builds using a byte code target for Java 12. -->
  786. <profile>
  787. <id>java12</id>
  788. <activation>
  789. <activeByDefault>false</activeByDefault>
  790. </activation>
  791. <properties>
  792. <bytecode.main.version>12</bytecode.main.version>
  793. <bytecode.test.version>12</bytecode.test.version>
  794. </properties>
  795. </profile>
  796. <!-- Builds using a byte code target for Java 13. -->
  797. <profile>
  798. <id>java13</id>
  799. <activation>
  800. <activeByDefault>false</activeByDefault>
  801. </activation>
  802. <properties>
  803. <bytecode.main.version>13</bytecode.main.version>
  804. <bytecode.test.version>13</bytecode.test.version>
  805. </properties>
  806. </profile>
  807. <!-- Builds using a byte code target for Java 14. -->
  808. <profile>
  809. <id>java14</id>
  810. <activation>
  811. <activeByDefault>false</activeByDefault>
  812. </activation>
  813. <properties>
  814. <bytecode.main.version>14</bytecode.main.version>
  815. <bytecode.test.version>14</bytecode.test.version>
  816. </properties>
  817. </profile>
  818. <!-- Builds using a byte code target for Java 15. -->
  819. <profile>
  820. <id>java15</id>
  821. <activation>
  822. <activeByDefault>false</activeByDefault>
  823. </activation>
  824. <properties>
  825. <bytecode.main.version>15</bytecode.main.version>
  826. <bytecode.test.version>15</bytecode.test.version>
  827. </properties>
  828. </profile>
  829. <!-- Builds using a byte code target for Java 16. -->
  830. <profile>
  831. <id>java16</id>
  832. <activation>
  833. <activeByDefault>false</activeByDefault>
  834. </activation>
  835. <properties>
  836. <bytecode.main.version>16</bytecode.main.version>
  837. <bytecode.test.version>16</bytecode.test.version>
  838. </properties>
  839. </profile>
  840. <!-- Builds using a byte code target for Java 17. -->
  841. <profile>
  842. <id>java17</id>
  843. <activation>
  844. <activeByDefault>false</activeByDefault>
  845. </activation>
  846. <properties>
  847. <bytecode.main.version>17</bytecode.main.version>
  848. <bytecode.test.version>17</bytecode.test.version>
  849. </properties>
  850. </profile>
  851. <!-- Builds using a byte code target for Java 18. -->
  852. <profile>
  853. <id>java18</id>
  854. <activation>
  855. <activeByDefault>false</activeByDefault>
  856. </activation>
  857. <properties>
  858. <bytecode.main.version>18</bytecode.main.version>
  859. <bytecode.test.version>18</bytecode.test.version>
  860. <spotbugs.skip>true</spotbugs.skip>
  861. </properties>
  862. </profile>
  863. <!-- Builds using a byte code target for Java 19. -->
  864. <profile>
  865. <id>java19</id>
  866. <activation>
  867. <activeByDefault>false</activeByDefault>
  868. </activation>
  869. <properties>
  870. <bytecode.main.version>19</bytecode.main.version>
  871. <bytecode.test.version>19</bytecode.test.version>
  872. <spotbugs.skip>true</spotbugs.skip>
  873. </properties>
  874. </profile>
  875. <!-- Builds using a byte code target for Java 20. -->
  876. <profile>
  877. <id>java20</id>
  878. <activation>
  879. <activeByDefault>false</activeByDefault>
  880. </activation>
  881. <properties>
  882. <bytecode.main.version>20</bytecode.main.version>
  883. <bytecode.test.version>20</bytecode.test.version>
  884. <spotbugs.skip>true</spotbugs.skip>
  885. </properties>
  886. </profile>
  887. <!-- Creates additional artifacts that are required for deployment. -->
  888. <profile>
  889. <id>extras</id>
  890. <activation>
  891. <activeByDefault>false</activeByDefault>
  892. </activation>
  893. <properties>
  894. <bytebuddy.extras>true</bytebuddy.extras>
  895. </properties>
  896. <build>
  897. <plugins>
  898. <!-- Create source code artifact. -->
  899. <plugin>
  900. <groupId>org.apache.maven.plugins</groupId>
  901. <artifactId>maven-source-plugin</artifactId>
  902. <version>${version.plugin.source}</version>
  903. <executions>
  904. <execution>
  905. <goals>
  906. <goal>jar</goal>
  907. </goals>
  908. </execution>
  909. </executions>
  910. </plugin>
  911. <!-- Create javadoc artifact. -->
  912. <plugin>
  913. <groupId>org.apache.maven.plugins</groupId>
  914. <artifactId>maven-javadoc-plugin</artifactId>
  915. <version>${version.plugin.javadoc}</version>
  916. <executions>
  917. <execution>
  918. <goals>
  919. <goal>jar</goal>
  920. </goals>
  921. </execution>
  922. </executions>
  923. </plugin>
  924. </plugins>
  925. </build>
  926. </profile>
  927. <!-- Sign any created artifact. (Requires configuration of gpg on the executing machine.) -->
  928. <profile>
  929. <id>gpg</id>
  930. <activation>
  931. <activeByDefault>false</activeByDefault>
  932. </activation>
  933. <build>
  934. <plugins>
  935. <!-- Sign artifacts. -->
  936. <plugin>
  937. <groupId>org.apache.maven.plugins</groupId>
  938. <artifactId>maven-gpg-plugin</artifactId>
  939. <version>${version.plugin.gpg}</version>
  940. <executions>
  941. <execution>
  942. <phase>verify</phase>
  943. <goals>
  944. <goal>sign</goal>
  945. </goals>
  946. <configuration>
  947. <gpgArguments>
  948. <arg>--pinentry-mode</arg>
  949. <arg>loopback</arg>
  950. </gpgArguments>
  951. </configuration>
  952. </execution>
  953. </executions>
  954. </plugin>
  955. </plugins>
  956. </build>
  957. </profile>
  958. <!-- Basic checks that are not requiring too much runtime. -->
  959. <profile>
  960. <id>checks</id>
  961. <activation>
  962. <activeByDefault>false</activeByDefault>
  963. </activation>
  964. <build>
  965. <plugins>
  966. <!-- Check style on build. -->
  967. <plugin>
  968. <groupId>org.apache.maven.plugins</groupId>
  969. <artifactId>maven-checkstyle-plugin</artifactId>
  970. <version>${version.plugin.checkstyle}</version>
  971. <executions>
  972. <execution>
  973. <phase>validate</phase>
  974. <goals>
  975. <goal>check</goal>
  976. </goals>
  977. <configuration>
  978. <configLocation>checkstyle.xml</configLocation>
  979. <consoleOutput>true</consoleOutput>
  980. <failsOnError>true</failsOnError>
  981. <excludes>**/generated/**/*</excludes>
  982. <includeResources>false</includeResources>
  983. </configuration>
  984. </execution>
  985. </executions>
  986. <dependencies>
  987. <dependency>
  988. <groupId>com.puppycrawl.tools</groupId>
  989. <artifactId>checkstyle</artifactId>
  990. <version>${version.checkstyle}</version>
  991. </dependency>
  992. </dependencies>
  993. </plugin>
  994. <!-- Check API compatibility. -->
  995. <plugin>
  996. <groupId>org.codehaus.mojo</groupId>
  997. <artifactId>animal-sniffer-maven-plugin</artifactId>
  998. <version>${version.plugin.animal-sniffer}</version>
  999. <executions>
  1000. <execution>
  1001. <phase>test</phase>
  1002. <goals>
  1003. <goal>check</goal>
  1004. </goals>
  1005. <configuration>
  1006. <signature>
  1007. <groupId>org.codehaus.mojo.signature</groupId>
  1008. <artifactId>java15</artifactId>
  1009. <version>1.0</version>
  1010. </signature>
  1011. </configuration>
  1012. </execution>
  1013. </executions>
  1014. <dependencies>
  1015. <dependency>
  1016. <groupId>org.ow2.asm</groupId>
  1017. <artifactId>asm</artifactId>
  1018. <version>${version.asm}</version>
  1019. </dependency>
  1020. </dependencies>
  1021. </plugin>
  1022. <!-- Make sure that Byte Buddy does never depend on ASM's tree API. -->
  1023. <plugin>
  1024. <groupId>org.apache.maven.plugins</groupId>
  1025. <artifactId>maven-enforcer-plugin</artifactId>
  1026. <version>${version.plugin.enforcer}</version>
  1027. <executions>
  1028. <execution>
  1029. <goals>
  1030. <goal>enforce</goal>
  1031. </goals>
  1032. <configuration>
  1033. <fail>true</fail>
  1034. <rules>
  1035. <bannedDependencies>
  1036. <includes>
  1037. <include>org.ow2.asm:asm-tree</include>
  1038. </includes>
  1039. </bannedDependencies>
  1040. <requireMavenVersion>
  1041. <version>[3.2.5,)</version>
  1042. </requireMavenVersion>
  1043. <requireJavaVersion>
  1044. <version>[1.6,)</version>
  1045. </requireJavaVersion>
  1046. </rules>
  1047. </configuration>
  1048. </execution>
  1049. </executions>
  1050. </plugin>
  1051. </plugins>
  1052. </build>
  1053. </profile>
  1054. <!-- Integration profile that executes long-running tasks. -->
  1055. <profile>
  1056. <id>integration</id>
  1057. <activation>
  1058. <activeByDefault>false</activeByDefault>
  1059. </activation>
  1060. <properties>
  1061. <bytebuddy.integration>true</bytebuddy.integration>
  1062. </properties>
  1063. </profile>
  1064. <!-- Integration profile that executes static code analysis. -->
  1065. <profile>
  1066. <id>analysis</id>
  1067. <activation>
  1068. <activeByDefault>false</activeByDefault>
  1069. </activation>
  1070. <build>
  1071. <plugins>
  1072. <!-- Run spotbugs if not specified differently in a module.-->
  1073. <plugin>
  1074. <groupId>com.github.spotbugs</groupId>
  1075. <artifactId>spotbugs-maven-plugin</artifactId>
  1076. <version>${version.plugin.spotbugs}</version>
  1077. <executions>
  1078. <execution>
  1079. <phase>verify</phase>
  1080. <goals>
  1081. <goal>check</goal>
  1082. </goals>
  1083. <configuration>
  1084. <skip>${spotbugs.skip}</skip>
  1085. <effort>Max</effort>
  1086. <threshold>Low</threshold>
  1087. <xmlOutput>true</xmlOutput>
  1088. <failOnError>true</failOnError>
  1089. </configuration>
  1090. </execution>
  1091. </executions>
  1092. </plugin>
  1093. <!-- Avoid violating semantic versioning. -->
  1094. <plugin>
  1095. <groupId>com.github.siom79.japicmp</groupId>
  1096. <artifactId>japicmp-maven-plugin</artifactId>
  1097. <version>${version.plugin.japicmp}</version>
  1098. <executions>
  1099. <execution>
  1100. <phase>verify</phase>
  1101. <goals>
  1102. <goal>cmp</goal>
  1103. </goals>
  1104. <configuration>
  1105. <skip>${japicmp.skip}</skip>
  1106. <newVersion>
  1107. <file>
  1108. <path>${project.build.directory}/${project.artifactId}-${project.version}.jar</path>
  1109. </file>
  1110. </newVersion>
  1111. <parameter>
  1112. <accessModifier>public</accessModifier>
  1113. <oldVersionPattern>\d+\.\d+\.\d+</oldVersionPattern>
  1114. <ignoreMissingClasses>true</ignoreMissingClasses>
  1115. <onlyBinaryIncompatible>true</onlyBinaryIncompatible>
  1116. <breakBuildBasedOnSemanticVersioning>true</breakBuildBasedOnSemanticVersioning>
  1117. <excludes>
  1118. <exclude>net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory$ForJava9CapableVm</exclude>
  1119. <exclude>net.bytebuddy.agent.builder.AgentBuilder$Default$ExecutingTransformer$Factory$ForLegacyVm</exclude>
  1120. </excludes>
  1121. </parameter>
  1122. </configuration>
  1123. </execution>
  1124. </executions>
  1125. </plugin>
  1126. </plugins>
  1127. </build>
  1128. </profile>
  1129. <!-- Pseudo profiles for checksum collection (only available via Maven wrapper). -->
  1130. <profile>
  1131. <id>checksum-collect</id>
  1132. <activation>
  1133. <activeByDefault>false</activeByDefault>
  1134. </activation>
  1135. <build>
  1136. <plugins>
  1137. <plugin>
  1138. <groupId>org.apache.maven.plugins</groupId>
  1139. <artifactId>maven-antrun-plugin</artifactId>
  1140. <version>${version.plugin.antrun}</version>
  1141. <inherited>false</inherited>
  1142. <executions>
  1143. <execution>
  1144. <id>checksum-collect</id>
  1145. <phase>initialize</phase>
  1146. <goals>
  1147. <goal>run</goal>
  1148. </goals>
  1149. <configuration>
  1150. <target>
  1151. <echo level="info" message="Checksum collection is enabled (only if using mvnw)." />
  1152. </target>
  1153. </configuration>
  1154. </execution>
  1155. </executions>
  1156. </plugin>
  1157. </plugins>
  1158. </build>
  1159. </profile>
  1160. <!-- Pseudo profiles for checksum collection (only available via Maven wrapper). -->
  1161. <profile>
  1162. <id>checksum-enforce</id>
  1163. <activation>
  1164. <activeByDefault>false</activeByDefault>
  1165. </activation>
  1166. <build>
  1167. <plugins>
  1168. <plugin>
  1169. <groupId>org.apache.maven.plugins</groupId>
  1170. <artifactId>maven-antrun-plugin</artifactId>
  1171. <version>${version.plugin.antrun}</version>
  1172. <inherited>false</inherited>
  1173. <executions>
  1174. <execution>
  1175. <id>checksum-enforce</id>
  1176. <phase>initialize</phase>
  1177. <goals>
  1178. <goal>run</goal>
  1179. </goals>
  1180. <configuration>
  1181. <target>
  1182. <echo level="info" message="Checksum enforcement is enabled (only if using mvnw)." />
  1183. </target>
  1184. </configuration>
  1185. </execution>
  1186. </executions>
  1187. </plugin>
  1188. </plugins>
  1189. </build>
  1190. </profile>
  1191. </profiles>
  1192. <dependencyManagement>
  1193. <dependencies>
  1194. <dependency>
  1195. <groupId>${project.groupId}</groupId>
  1196. <artifactId>byte-buddy</artifactId>
  1197. <version>${project.version}</version>
  1198. </dependency>
  1199. <dependency>
  1200. <groupId>${project.groupId}</groupId>
  1201. <artifactId>byte-buddy-dep</artifactId>
  1202. <version>${project.version}</version>
  1203. </dependency>
  1204. <dependency>
  1205. <groupId>${project.groupId}</groupId>
  1206. <artifactId>byte-buddy-agent</artifactId>
  1207. <version>${project.version}</version>
  1208. </dependency>
  1209. <dependency>
  1210. <groupId>${project.groupId}</groupId>
  1211. <artifactId>byte-buddy-benchmark</artifactId>
  1212. <version>${project.version}</version>
  1213. </dependency>
  1214. <dependency>
  1215. <groupId>${project.groupId}</groupId>
  1216. <artifactId>byte-buddy-android</artifactId>
  1217. <version>${project.version}</version>
  1218. </dependency>
  1219. <dependency>
  1220. <groupId>${project.groupId}</groupId>
  1221. <artifactId>byte-buddy-maven-plugin</artifactId>
  1222. <version>${project.version}</version>
  1223. </dependency>
  1224. <dependency>
  1225. <groupId>${project.groupId}</groupId>
  1226. <artifactId>byte-buddy-gradle-plugin</artifactId>
  1227. <version>${project.version}</version>
  1228. </dependency>
  1229. </dependencies>
  1230. </dependencyManagement>
  1231. </project>