diff options
author | Alexander Kriegisch <Alexander@Kriegisch.name> | 2021-04-09 11:59:05 +0700 |
---|---|---|
committer | Alexander Kriegisch <Alexander@Kriegisch.name> | 2021-04-09 11:59:05 +0700 |
commit | d98f01fb7e8f275395214f78d64e03733e6b3970 (patch) | |
tree | a81a8e6e68e09c5eebc6771d2fd76a6a78512663 /pom.xml | |
parent | 5c34265be69ec2e0380c4b9dcc2553b08ddd6bd8 (diff) | |
download | aspectj-d98f01fb7e8f275395214f78d64e03733e6b3970.tar.gz aspectj-d98f01fb7e8f275395214f78d64e03733e6b3970.zip |
Build libs without additional profiles, add Enforcer rule
Because 'libx' no longer is a submodule of the AspectJ parent POM, it
will not be built automatically each time an AspectJ build runs.
Therefore, is is no longer necessary to shield the zip/unzip steps from
repetitive execution by profiles with auto-activation based on the
(non-)existence of files. An AspectJ developer knows when to build the
module, she does it manually anyway.
A new Enforcer rule makes sure to warn the developer if some files it
expects to exist in the libs folder are not actually present.
Now we also have a Maven Clean rule which wipes away all downloaded and
(un-)zipped files.
Signed-off-by: Alexander Kriegisch <Alexander@Kriegisch.name>
Diffstat (limited to 'pom.xml')
-rw-r--r-- | pom.xml | 44 |
1 files changed, 44 insertions, 0 deletions
@@ -18,10 +18,14 @@ <lib.regexp.version>1.2</lib.regexp.version> <lib.commons.beanutils.version>1.4</lib.commons.beanutils.version> <lib.commons.beanutils.tag>BEANUTILS_1_4</lib.commons.beanutils.tag> + <lib.commons.collections.version>2.0</lib.commons.collections.version> + <lib.commons.collections.tag>collections-2.0</lib.commons.collections.tag> <lib.commons.digester.version>1.3</lib.commons.digester.version> <lib.commons.digester.tag>DIGESTER_1_3</lib.commons.digester.tag> <lib.commons.logging.version>1.0.1</lib.commons.logging.version> <lib.commons.logging.tag>LOGGING_1_0_1</lib.commons.logging.tag> + <asm.version>9.1</asm.version> + <lib.directory>${maven.multiModuleProjectDirectory}/libx</lib.directory> </properties> <modules> @@ -48,7 +52,11 @@ <module>build</module> <module>run-all-junit-tests</module> <module>docs</module> + + <!-- FYI: These are NOT meant to be sub-modules but a stand-alone projects built and deployed independently. --> + <!-- <module>libx</module> + --> <!-- create the important artifacts we care about --> <module>aspectjrt</module> @@ -186,6 +194,42 @@ <artifactId>maven-help-plugin</artifactId> </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <executions> + <execution> + <id>enforce-libraries-exist</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <requireFilesExist> + <!-- + Do NOT insert any line breaks + indentation inside the message, keep it on a single line. + Maven Enforcer does not strip any whitespace or unindent, which looks quite ugly on the console. + --> + <message> + Please go to module subdirectory 'libx' and run 'mvn compile' there. This should take care of downloading all necessary libraries to that directory, where some tests expect them to be. + </message> + <files> + <file>${lib.directory}/ant/bin/ant</file> + <file>${lib.directory}/ant/lib/junit.jar</file> + <file>${lib.directory}/commons/commons.jar</file> + <file>${lib.directory}/jarjar/jarjar-1.3.jar</file> + <file>${lib.directory}/junit/junit.jar</file> + <file>${lib.directory}/regexp/jakarta-regexp-1.2.jar</file> + <file>${lib.directory}/saxon/saxon.jar</file> + </files> + </requireFilesExist> + </rules> + <fail>true</fail> + </configuration> + </execution> + </executions> + </plugin> + </plugins> </build> |