Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -8,6 +8,7 @@ target/

# IntelliJ IDEA
.idea/
*.iml

# Xalan
build/
Expand Down
30 changes: 7 additions & 23 deletions distribution/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -10,39 +10,23 @@

<artifactId>distribution</artifactId>
<name>distribution</name>
<!-- I don't understand why, but on my system when I set the packaging
to pom I wind up with the pom.xml file being overwritten with binary
stuff, apparently one of the archives.

When set to jar, the pom is undamaged. If I mark the dependencies
as provided, I can at least avoid wasting much time on that, but
this is the simplest workaround I've yet found for weird behavior.
-->
<packaging>jar</packaging>
<packaging>pom</packaging>

<!-- NOTE: These dependency declarations are only used to sort
this project to the end of the queue in the multimodule build.
Marking them as provided keeps them out of the output jarfile
(if any).
<!-- Depend on modules containing source code that needs to be compiled
before being able to create a binary distribution
-->
<dependencies>
<dependency>
<groupId>xalan</groupId>
<artifactId>serializer</artifactId>
<version>2.7.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>2.7.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>samples</artifactId>
<version>2.7.3</version>
<scope>provided</scope>
</dependency>
</dependencies>

Expand All @@ -59,8 +43,8 @@
<goal>single</goal>
</goals>
<configuration>
<finalName>${project.parent.build.finalName}</finalName>
<outputDirectory>../build</outputDirectory>
<finalName>${project.parent.build.finalName}</finalName>
<outputDirectory>../build</outputDirectory>
<descriptors>
<descriptor>src/assembly/bin.xml</descriptor>
</descriptors>
Expand All @@ -73,8 +57,8 @@
<goal>single</goal>
</goals>
<configuration>
<finalName>${project.parent.build.finalName}</finalName>
<outputDirectory>../build</outputDirectory>
<finalName>${project.parent.build.finalName}</finalName>
<outputDirectory>../build</outputDirectory>
<descriptors>
<descriptor>src/assembly/src.xml</descriptor>
</descriptors>
Expand Down
7 changes: 7 additions & 0 deletions distribution/src/assembly/bin.xml
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,13 @@
<binaries>
<outputDirectory>${project.parent.name}_${project.parent.version}</outputDirectory>
<unpack>false</unpack>
<dependencySets>
<dependencySet>
<excludes>
<exclude>org.jboss.spec.javax.rmi:jboss-rmi-api_1.0_spec</exclude>
</excludes>
</dependencySet>
</dependencySets>
</binaries>
</moduleSet>
</moduleSets>
Expand Down
29 changes: 15 additions & 14 deletions distribution/src/assembly/src.xml
Original file line number Diff line number Diff line change
Expand Up @@ -41,7 +41,7 @@ under the License.
<useDefaultExcludes>true</useDefaultExcludes>
<excludes>
<!-- build output -->
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/).*${project.build.directory}.*]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/).*${project.basedir}.*]</exclude>

<!-- NOTE: Most of the following excludes should not be required
if the standard release process is followed. This is because the
Expand All @@ -56,23 +56,24 @@ under the License.
-->

<!-- IDEs -->
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.project]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.classpath]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iws]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?[^/]*\.iml]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?maven-eclipse\.xml]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.project]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.classpath]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.idea]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?[^/]*\.iws]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?[^/]*\.ipr]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?[^/]*\.iml]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.settings(/.*)?]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.externalToolBuilders(/.*)?]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.deployables(/.*)?]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?\.wtpmodules(/.*)?]</exclude>

<!-- misc -->
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?cobertura\.ser]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?cobertura\.ser]</exclude>

<!-- release-plugin temp files -->
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup]</exclude>
<exclude>%regex[(?!((?!${project.build.directory}/)[^/]+/)*src/)(.*/)?release\.properties]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?pom\.xml\.releaseBackup]</exclude>
<exclude>%regex[(?!((?!${project.basedir}/)[^/]+/)*src/)(.*/)?release\.properties]</exclude>
</excludes>
</fileSet>

Expand Down
96 changes: 29 additions & 67 deletions pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -114,35 +114,6 @@
</configuration>
</plugin>

<!-- <plugin> -->
<!-- <groupId>org.apache.maven.plugins</groupId> -->
<!-- <artifactId>maven-shade-plugin</artifactId> -->
<!-- <version>3.5.0</version> -->
<!-- <executions> -->
<!-- <execution> -->
<!-- <phase>package</phase> -->
<!-- <goals> -->
<!-- <goal>shade</goal> -->
<!-- </goals> -->
<!-- <configuration> -->
<!-- <artifactSet> -->
<!-- <excludes> -->
<!-- <!-\- Their examples -\-> -->
<!-- <exclude>junit:junit</exclude> -->
<!-- <exclude>jmock:*</exclude> -->
<!-- <exclude>*:xml-apis</exclude> -->
<!-- <exclude>org.apache.maven:lib:tests</exclude> -->
<!-- <!-\- What I think I need to exclude -\-> -->
<!-- <exclude>com.github.vbmacher:java-cup</exclude> -->
<!-- <exclude>commons-logging:commons-logging</exclude> -->
<!-- <exclude>javax:*</exclude> -->
<!-- </excludes> -->
<!-- </artifactSet> -->
<!-- </configuration> -->
<!-- </execution> -->
<!-- </executions> -->
<!-- </plugin> -->

<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-site-plugin</artifactId>
Expand Down Expand Up @@ -280,46 +251,29 @@
</executions>
</plugin>

<!-- Stylistically, better to do this from distribution/pom.xml.
Can't do that until I have a src.xml assembly description
that is appropriately tuned.
-->
<!-- <plugin> -->
<!-- <artifactId>maven-assembly-plugin</artifactId> -->
<!-- <version>3.6.0</version> -->
<!-- <dependencies> -->
<!-- <dependency> -->
<!-- <groupId>org.apache.apache.resources</groupId> -->
<!-- <artifactId>apache-source-release-assembly-descriptor</artifactId> -->
<!-- <version>1.5</version> -->
<!-- </dependency> -->
<!-- </dependencies> -->
<!-- <executions> -->
<!-- <execution> -->
<!-- <id>source-release-assembly</id> -->
<!-- <phase>package</phase> -->
<!-- <goals> -->
<!-- <goal>single</goal> -->
<!-- </goals> -->
<!-- <configuration> -->
<!-- <!-\- Standardized Apache "source distribution" -->
<!-- But there's stuff we may want to cheat into it. -->
<!-- -\-> -->
<!-- <descriptorRefs> -->
<!-- <descriptorRef>source-release-zip-tar</descriptorRef> -->
<!-- </descriptorRefs> -->
<!-- <!-\- <descriptors> -\-> -->
<!-- <!-\- <descriptor>src/assembly/src.tar</descriptor> -\-> -->
<!-- <!-\- </descriptors> -\-> -->
<!-- <tarLongFileMode>gnu</tarLongFileMode> -->
<!-- </configuration> -->
<!-- </execution> -->
<!-- </executions> -->
<!-- </plugin> -->

</plugins>
</build>

<dependencyManagement>
<dependencies>
<dependency>
<groupId>xalan</groupId>
<artifactId>serializer</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>${project.version}</version>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>samples</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</dependencyManagement>

<reporting>
<plugins>
<plugin>
Expand Down Expand Up @@ -382,9 +336,17 @@
<tagletArtifact>
<groupId>xalan</groupId>
<artifactId>xalan2jtaglet</artifactId>
<version>2.7.3</version>
<version>${project.version}</version>
</tagletArtifact>

<!-- FIXME: Without this exclude, the build only works if module
'xalan2jtaglet' was first installed locally or deployed to
a remote repository. I.e., we have to use something like
'mvn clean install site', at least for the taglet module.
'mvn clean package site' on top level is not enough for a
build when the local Maven repo is clean.
-->
<excludePackageNames>xalan2jtaglet</excludePackageNames>
</configuration>

<reportSets>
Expand Down
43 changes: 1 addition & 42 deletions samples/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -24,20 +24,16 @@
<dependency>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
<version>4.11</version>
<version>4.13.2</version>
<scope>test</scope>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>serializer</artifactId>
<version>2.7.3</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>xalan</groupId>
<artifactId>xalan</artifactId>
<version>2.7.3</version>
<scope>provided</scope>
</dependency>

<!-- https://mvnrepository.com/artifact/javax.servlet/servlet-api -->
Expand Down Expand Up @@ -89,43 +85,6 @@

<build>
<plugins>
<!--
https://maven.apache.org/plugins/maven-shade-plugin/examples/includes-excludes.html -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.5.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<excludes>
<!-- Their examples (testing) -->
<exclude>junit:junit</exclude>
<exclude>jmock:*</exclude>
<exclude>org.apache.maven:lib:tests</exclude>
<!-- What I think I need to exclude.
Some are direct dependencies, some come in
via maven packages. -->
<exclude>com.github.vbmacher:java-cup</exclude>
<exclude>commons-logging:commons-logging</exclude>
<exclude>org.apache.commons:commons-lang3</exclude>
<exclude>org.apache.ant:ant</exclude>
<exclude>org.apache.ant:ant-launcher</exclude>
<exclude>xalan:serializer</exclude>
<exclude>de.jflex:jflex</exclude>
<exclude>org.jboss.spec.javax.rmi:jboss-rmi-api_1.0_spec</exclude>
</excludes>
</artifactSet>
</configuration>
</execution>
</executions>
</plugin>

<!-- Copy generated jarfile up to xalan-java/build/,
for backward compatibility with Ant builds. -->
<plugin>
Expand Down
35 changes: 0 additions & 35 deletions serializer/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -69,41 +69,6 @@
</configuration>
</plugin>

<!-- Filter out packages we don't want copied to the output jar
https://maven.apache.org/plugins/maven-shade-plugin/examples/includes-excludes.html -->
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<version>3.5.0</version>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
<configuration>
<artifactSet>
<excludes>
<!-- Their examples (testing) -->
<exclude>junit:junit</exclude>
<exclude>jmock:*</exclude>
<exclude>org.apache.maven:lib:tests</exclude>
<!-- What I think I need to exclude.
Some are direct dependencies, some come in
via maven packages. -->
<exclude>com.github.vbmacher:java-cup</exclude>
<exclude>commons-logging:commons-logging</exclude>
<exclude>org.apache.commons:commons-lang3</exclude>
<exclude>org.apache.ant:ant</exclude>
<exclude>org.apache.ant:ant-launcher</exclude>
<exclude>org.apache.bcel:bcel</exclude>
</excludes>
</artifactSet>
</configuration>
</execution>
</executions>
</plugin>

<!-- Copy generated jarfile up to xalan-java/build/,
for backward compatibility with Ant builds. -->
<plugin>
Expand Down
1 change: 0 additions & 1 deletion xalan/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -146,7 +146,6 @@
<dependency>
<groupId>xalan</groupId>
<artifactId>serializer</artifactId>
<version>2.7.3</version>
</dependency>

<!-- https://mvnrepository.com/artifact/org.apache.bcel/bcel -->
Expand Down