Skip to content

Commit 6c97a6d

Browse files
committed
IO-747 Enable moditect plugin when building with Java 9+
Enforce that Java 9+ is being used for releases Suggested-by: Jochen Wiedmann at https://github.com/apache/commons-io/pull/268/files#r707160987
1 parent 7854f80 commit 6c97a6d

1 file changed

Lines changed: 58 additions & 34 deletions

File tree

pom.xml

Lines changed: 58 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -338,16 +338,16 @@ file comparators, endian transformation classes, and much more.
338338
<commons.jacoco.version>0.8.7</commons.jacoco.version>
339339
<commons.surefire.version>3.0.0-M5</commons.surefire.version>
340340
<commons.japicmp.version>0.15.3</commons.japicmp.version>
341+
<commons.enforcer.version>3.0.0</commons.enforcer.version>
342+
<commons.moditect.version>1.0.0.RC1</commons.moditect.version>
341343
<spotbugs.plugin.version>4.3.0</spotbugs.plugin.version>
342344
<spotbugs.impl.version>4.4.1</spotbugs.impl.version>
343-
<jmh.version>1.33</jmh.version>
345+
<jmh.version>1.33</jmh.version>
344346
<japicmp.skip>false</japicmp.skip>
345347
<jacoco.skip>${env.JACOCO_SKIP}</jacoco.skip>
346348
<commons.release.isDistModule>true</commons.release.isDistModule>
347-
<commons.releaseManagerName>Gary Gregory</commons.releaseManagerName>
349+
<commons.releaseManagerName>Gary Gregory</commons.releaseManagerName>
348350
<commons.releaseManagerKey>86fdc7e2a11262cb</commons.releaseManagerKey>
349-
<moditect-maven-plugin.version>1.0.0.RC1</moditect-maven-plugin.version>
350-
<moditect.skip>true</moditect.skip>
351351
</properties>
352352

353353
<build>
@@ -389,7 +389,7 @@ file comparators, endian transformation classes, and much more.
389389
<plugin>
390390
<groupId>org.apache.maven.plugins</groupId>
391391
<artifactId>maven-enforcer-plugin</artifactId>
392-
<version>3.0.0</version>
392+
<version>${commons.enforcer.version}</version>
393393
<executions>
394394
<execution>
395395
<id>enforce-maven</id>
@@ -489,30 +489,6 @@ file comparators, endian transformation classes, and much more.
489489
<groupId>com.github.siom79.japicmp</groupId>
490490
<artifactId>japicmp-maven-plugin</artifactId>
491491
</plugin>
492-
<plugin>
493-
<groupId>org.moditect</groupId>
494-
<artifactId>moditect-maven-plugin</artifactId>
495-
<version>${moditect-maven-plugin.version}</version>
496-
<executions>
497-
<execution>
498-
<id>add-module-infos</id>
499-
<phase>package</phase>
500-
<goals>
501-
<goal>add-module-info</goal>
502-
</goals>
503-
<configuration>
504-
<jvmVersion>9</jvmVersion>
505-
<outputDirectory>${project.build.directory}</outputDirectory>
506-
<overwriteExistingFiles>true</overwriteExistingFiles>
507-
<module>
508-
<moduleInfo>
509-
<name>org.apache.commons.io</name>
510-
</moduleInfo>
511-
</module>
512-
</configuration>
513-
</execution>
514-
</executions>
515-
</plugin>
516492
</plugins>
517493
</build>
518494

@@ -589,7 +565,36 @@ file comparators, endian transformation classes, and much more.
589565
<properties>
590566
<!-- coverall version 4.3.0 does not work with java 9, see https://github.com/trautonen/coveralls-maven-plugin/issues/112 -->
591567
<coveralls.skip>true</coveralls.skip>
568+
<maven.compiler.release>8</maven.compiler.release>
592569
</properties>
570+
<build>
571+
<plugins>
572+
<plugin>
573+
<groupId>org.moditect</groupId>
574+
<artifactId>moditect-maven-plugin</artifactId>
575+
<version>${commons.moditect.version}</version>
576+
<executions>
577+
<execution>
578+
<id>add-module-infos</id>
579+
<phase>package</phase>
580+
<goals>
581+
<goal>add-module-info</goal>
582+
</goals>
583+
<configuration>
584+
<jvmVersion>9</jvmVersion>
585+
<outputDirectory>${project.build.directory}</outputDirectory>
586+
<overwriteExistingFiles>true</overwriteExistingFiles>
587+
<module>
588+
<moduleInfo>
589+
<name>org.apache.commons.io</name>
590+
</moduleInfo>
591+
</module>
592+
</configuration>
593+
</execution>
594+
</executions>
595+
</plugin>
596+
</plugins>
597+
</build>
593598
</profile>
594599
<profile>
595600
<id>benchmark</id>
@@ -632,11 +637,30 @@ file comparators, endian transformation classes, and much more.
632637
</profile>
633638
<profile>
634639
<id>release</id>
635-
<properties>
636-
<!-- Enable Moditect for releases. This requires JDK 9+ for the build -->
637-
<moditect.skip>false</moditect.skip>
638-
<maven.compiler.release>8</maven.compiler.release>
639-
</properties>
640+
<build>
641+
<plugins>
642+
<plugin>
643+
<groupId>org.apache.maven.plugins</groupId>
644+
<artifactId>maven-enforcer-plugin</artifactId>
645+
<version>${commons.enforcer.version}</version>
646+
<executions>
647+
<execution>
648+
<id>enforce-versions</id>
649+
<goals>
650+
<goal>enforce</goal>
651+
</goals>
652+
<configuration>
653+
<rules>
654+
<requireJavaVersion>
655+
<version>9</version>
656+
</requireJavaVersion>
657+
</rules>
658+
</configuration>
659+
</execution>
660+
</executions>
661+
</plugin>
662+
</plugins>
663+
</build>
640664
</profile>
641665
</profiles>
642666
</project>

0 commit comments

Comments
 (0)