proxymusic
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>org.audiveris</groupId> <artifactId>proxymusic</artifactId> <version>4.0.3</version> </dependency>
<?xml version="1.0" encoding="UTF-8"?> <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"> <modelVersion>4.0.0</modelVersion> <groupId>org.audiveris</groupId> <artifactId>proxymusic</artifactId> <packaging>jar</packaging> <version>4.0.3</version> <name>ProxyMusic</name> <url>https://github.com/Audiveris/proxymusic</url> <description>ProxyMusic provides a binding between Java objects in memory and data formatted according to MusicXML 4.0</description> <licenses> <license> <name>GNU General Lesser Public License (LGPL) version 3.0</name> <url>http://www.gnu.org/licenses/lgpl-3.0.txt</url> </license> </licenses> <organization> <name>Audiveris Ltd</name> <url>http://www.audiveris.org</url> </organization> <developers> <developer> <id>hbitteur</id> <name>Hervé Bitteur</name> <email>herve.bitteur@audiveris.org</email> <organization>Audiveris Ltd</organization> <organizationUrl>http://www.audiveris.org</organizationUrl> <roles> <role>administrator</role> <role>developer</role> </roles> <timezone>+1</timezone> <properties> <picUrl>images/Herve-64x64.png</picUrl> </properties> </developer> </developers> <!-- Source Code Management --> <scm> <connection>scm:git:git://github.com/Audiveris/proxymusic.git</connection> <developerConnection>scm:git:ssh://git@github.com/Audiveris/proxymusic.git</developerConnection> <url>https://github.com/Audiveris/proxymusic</url> </scm> <!-- Issue management --> <issueManagement> <system>GitHub Issues</system> <url>https://github.com/Audiveris/proxymusic/issues</url> </issueManagement> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> <maven.compiler.encoding>UTF-8</maven.compiler.encoding> </properties> <!-- Location where site is deployed - username/password for site.deployments are in server.xml --> <distributionManagement> <!-- <site> <id>ossrh</id> <name>Site deployments</name> <url>https://oss.sonatype.org</url> </site>--> <repository> <id>central</id> <url>https://central.sonatype.com</url> </repository> </distributionManagement> <profiles> <profile> <id>java8-disable-strict-javadoc</id> <activation> <jdk>[1.8,)</jdk> </activation> <properties> <javadoc.doclint.none>-Xdoclint:none</javadoc.doclint.none> </properties> </profile> </profiles> <dependencies> <!-- Unitary tests framework --> <dependency> <groupId>junit</groupId> <artifactId>junit</artifactId> <version>4.13.2</version> <scope>test</scope> </dependency> <!-- Logging facade API (with no imposed binding) --> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-api</artifactId> <version>2.0.16</version> </dependency> <!-- Logging bindings, just for tests --> <dependency> <scope>test</scope> <groupId>ch.qos.logback</groupId> <artifactId>logback-classic</artifactId> <version>1.5.7</version> </dependency> <!-- JAXB API needed here for compilation of classes generated by jaxb2-maven-plugin. --> <dependency> <groupId>jakarta.xml.bind</groupId> <artifactId>jakarta.xml.bind-api</artifactId> <version>4.0.2</version> </dependency> <!-- JAXB runtime needed here for running tests --> <dependency> <groupId>org.glassfish.jaxb</groupId> <artifactId>jaxb-runtime</artifactId> <version>4.0.5</version> <scope>runtime</scope> </dependency> </dependencies> <build> <defaultGoal>install</defaultGoal> <extensions> <!-- For deploying using webdav --> <extension> <groupId>org.apache.maven.wagon</groupId> <artifactId>wagon-ssh</artifactId> <version>3.5.1</version> </extension> </extensions> <pluginManagement> <plugins> <!-- Enforce JDK 17 --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-enforcer-plugin</artifactId> <version>3.5.0</version> <executions> <execution> <id>enforce-java</id> <goals> <goal>enforce</goal> </goals> <configuration> <rules> <requireJavaVersion> <version>17</version> </requireJavaVersion> </rules> </configuration> </execution> </executions> </plugin> <!-- configure Maven to use JDK 17 for compilation --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-compiler-plugin</artifactId> <version>3.13.0</version> <configuration> <useIncrementalCompilation>false</useIncrementalCompilation> <source>17</source> <target>17</target> <testSource>17</testSource> <testTarget>17</testTarget> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-dependency-plugin</artifactId> <version>3.8.0</version> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>properties-maven-plugin</artifactId> <version>1.2.1</version> <executions> <execution> <goals> <goal>set-system-properties</goal> </goals> <configuration> <properties> <!-- Allow JAXB access to external schema --> <property> <name>javax.xml.accessExternalSchema</name> <value>all</value> </property> <!-- Workaround for deploy phase. Setting property is useless, but is kept here so that you can by yourself issue the following command: export MAVEN_OPTS="..." Where ... is replaced verbatim by the property value Including the double dashes that cannot be put in this comment! --> <property> <name>MAVEN_OPTS</name> <value>--add-opens java.base/java.util=ALL-UNNAMED --add-opens java.base/java.lang.reflect=ALL-UNNAMED --add-opens java.base/java.text=ALL-UNNAMED --add-opens java.desktop/java.awt.font=ALL-UNNAMED</value> </property> </properties> </configuration> </execution> </executions> </plugin> <!-- Generating Java sources from schemas --> <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>jaxb2-maven-plugin</artifactId> <version>3.2.0</version> <configuration> <!-- Copy source XSD files into resulting jar --> <xsdPathWithinArtifact>META-INF/jaxb/xsd</xsdPathWithinArtifact> </configuration> <executions> <!-- for Opus --> <execution> <id>xjc-opus</id> <goals> <goal>xjc</goal> </goals> <configuration> <sources> <source>src/main/xsd/opus.xsd</source> </sources> <packageName>org.audiveris.proxymusic.opus</packageName> <xjbSources> <!-- no binding customization --> <xjbSource>src/main/xjb/void.xjb</xjbSource> </xjbSources> </configuration> </execution> <!-- for MusicXML --> <execution> <id>xjc-musicxml</id> <goals> <goal>xjc</goal> </goals> <configuration> <sources> <source>src/main/xsd/musicxml.xsd</source> </sources> <packageName>org.audiveris.proxymusic</packageName> <xjbSources> <xjbSource>src/main/xjb/musicxml.xjb</xjbSource> </xjbSources> <clearOutputDir>false</clearOutputDir> </configuration> </execution> </executions> <dependencies> <dependency> <groupId>com.sun.activation</groupId> <artifactId>javax.activation</artifactId> <version>1.2.0</version> </dependency> <dependency> <groupId>org.glassfish.jaxb</groupId> <artifactId>jaxb-xjc</artifactId> <version>4.0.5</version> </dependency> <dependency> <groupId>org.glassfish.jaxb</groupId> <artifactId>jaxb-core</artifactId> <version>4.0.5</version> </dependency> <!-- CALL FOR HELP: 1/ Even though the following dependency on 'jaxb-runtime' is already declared at project level, it is included here at plugin level, otherwise the plugin execution fails with this message: Execution xjc-opus of goal org.codehaus.mojo:jaxb2-maven-plugin:2.4:xjc failed: A required class was missing while executing org.codehaus.mojo:jaxb2-maven-plugin:2.4:xjc: com/sun/xml/bind/Utils 2/ If it is included here only, then compiling the test programs fails with this message: javax.xml.bind.JAXBException: Implementation of JAXB-API has not been found on module path or classpath. Go figure! --> <dependency> <groupId>org.glassfish.jaxb</groupId> <artifactId>jaxb-runtime</artifactId> <version>4.0.5</version> </dependency> </dependencies> </plugin> <!-- Ant tasks --> <plugin> <artifactId>maven-antrun-plugin</artifactId> <version>3.1.0</version> <executions> <execution> <!-- Generate class ProgramId.java --> <id>generate-program-id</id> <phase>process-sources</phase> <goals> <goal>run</goal> </goals> <configuration> <exportAntProperties>true</exportAntProperties> <target> <property name="program.name" value="${project.name}" /> <property name="program.version" value="${project.version}" /> <ant antfile="ant-tasks.xml" dir="${basedir}" target="generate-program-id" inheritRefs="true" /> </target> </configuration> </execution> <execution> <!-- Fix javadoc tags in generated JAXB sources --> <id>fix-tags</id> <phase>process-sources</phase> <goals> <goal>run</goal> </goals> <configuration> <exportAntProperties>true</exportAntProperties> <target> <ant antfile="ant-tasks.xml" dir="${basedir}" target="fix-tags" inheritRefs="true" /> </target> </configuration> </execution> </executions> </plugin> <!-- Building a Jar of class binaries --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jar-plugin</artifactId> <version>3.4.2</version> <configuration> <archive> <manifest> <addDefaultImplementationEntries>true</addDefaultImplementationEntries> </manifest> <manifestEntries> <Implementation-Revision>${program.revision}</Implementation-Revision> </manifestEntries> </archive> <excludes> <!-- Otherwise, we get both .java and .class files in jar ??? --> <exclude>**/*.java</exclude> </excludes> </configuration> </plugin> <!-- Building a Jar of class sources --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-source-plugin</artifactId> <version>3.3.1</version> <executions> <execution> <id>attach-sources</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <!-- Building a Jar of JavaDoc --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <!-- <configuration> To avoid too many 'errors' with JDK8 doclint <additionalparam>${javadoc.doclint.none}</additionalparam> </configuration>--> <version>3.10.0</version> <executions> <execution> <id>attach-javadocs</id> <goals> <goal>jar</goal> </goals> </execution> </executions> </plugin> <!-- Building web site (?) --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-site-plugin</artifactId> <version>3.10.0</version> <executions> <execution> <id>attach-descriptor</id> <goals> <goal>attach-descriptor</goal> </goals> </execution> </executions> </plugin> <!-- Signing artifacts (mandatory for upload) --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-gpg-plugin</artifactId> <version>3.2.5</version> <executions> <execution> <id>sign-artifacts</id> <phase>verify</phase> <goals> <goal>sign</goal> </goals> </execution> </executions> </plugin> <!-- Upload artifacts to Maven Central Repository --> <plugin> <groupId>org.sonatype.central</groupId> <artifactId>central-publishing-maven-plugin</artifactId> <version>0.5.0</version> <extensions>true</extensions> <configuration> <publishingServerId>central</publishingServerId> <autoPublish>true</autoPublish> <waitUntil>published</waitUntil> </configuration> </plugin> </plugins> </build> <!-- For a web site (not really used) --> <reporting> <plugins> <!-- Standard maven reports --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-project-info-reports-plugin</artifactId> <version>3.1.2</version> </plugin> <!-- JavaDoc --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-javadoc-plugin</artifactId> <configuration> <!-- To avoid too many 'errors' with JDK8 doclint --> <additionalparam>${javadoc.doclint.none}</additionalparam> </configuration> <version>3.10.0</version> </plugin> <!-- Java cross references --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-jxr-plugin</artifactId> <version>3.5.0</version> </plugin> <!-- Unitary tests report --> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-report-plugin</artifactId> <version>3.5.0</version> </plugin> <!-- Unitary tests coverage --> <!-- <plugin> <groupId>org.codehaus.mojo</groupId> <artifactId>cobertura-maven-plugin</artifactId> <version>2.7</version> </plugin>--> </plugins> </reporting> </project>