ucanaccess
Used in:
components
- OverviewOverview
- VersionsVersions
- DependentsDependents
- DependenciesDependencies
<dependency> <groupId>io.github.spannm</groupId> <artifactId>ucanaccess</artifactId> <version>5.1.4</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> <parent> <groupId>org.basepom</groupId> <artifactId>basepom-oss</artifactId> <version>63</version> </parent> <groupId>io.github.spannm</groupId> <artifactId>ucanaccess</artifactId> <version>5.1.4</version> <packaging>jar</packaging> <name>UCanAccess</name> <description>Open-source pure Java JDBC driver for Access databases. Allows Java developers and client programs (e.g. OpenOffice, LibreOffice, SQuirreL SQL) to read and write various versions of Microsoft Access databases.</description> <url>${githubBaseUrl}${project.artifactId}</url> <inceptionYear>2012</inceptionYear> <organization> <name>UCanAccess</name> <url>${project.url}</url> </organization> <licenses> <license> <name>The Apache License, Version 2.0</name> <url>https://www.apache.org/licenses/LICENSE-2.0</url> </license> </licenses> <developers> <developer> <id>${developerId}</id> <name>Markus Spann</name> <email>spannm@outlook.de</email> <organizationUrl>${githubBaseUrl}</organizationUrl> <timezone>+1</timezone> </developer> <developer> <id>marco-amadei</id> <name>Marco Amadei</name> <email>amadei.mar@gmail.com</email> <roles> <role>developer emeritus</role> </roles> </developer> <developer> <name>Gord Thompson</name> <email>gordonthompson@users.sf.net</email> <roles> <role>developer emeritus</role> </roles> </developer> </developers> <scm> <connection>scm:git:ssh//git@github.com/${developerId}/${project.artifactId}.git</connection> <developerConnection>scm:git:ssh://git@github.com/${developerId}/${project.artifactId}.git</developerConnection> <url>https://github.com/${developerId}/${project.artifactId}/tree/master</url> <tag>ucanaccess-5.1.4</tag> </scm> <issueManagement> <system>Github</system> <url>${project.url}/issues</url> </issueManagement> <distributionManagement> <snapshotRepository> <id>central</id> <name>Sonatype Central Snapshots</name> <url>${basepom.deploy.snapshot.url}</url> </snapshotRepository> <repository> <id>central</id> <name>Sonatype Central Staging Repository</name> <url>https://central.sonatype.com</url> </repository> <site> <id>local</id> <name>Local Maven site</name> <url>file://${java.io.tmpdir}/${project.artifactId}/site-prepared</url> </site> </distributionManagement> <properties> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <project.build.systemJdk>11</project.build.systemJdk> <project.build.targetJdk>11</project.build.targetJdk> <developerId>spannm</developerId> <githubBaseUrl>https://github.com/${developerId}/</githubBaseUrl> <ucanaccess.console.main>net.ucanaccess.console.Main</ucanaccess.console.main> <uber.jar.classifier.name>uber</uber.jar.classifier.name> <dep.jackcess.artifactId>jackcess</dep.jackcess.artifactId> <dep.jackcess.version>5.1.1</dep.jackcess.version> <dep.hsqldb.version>2.7.4</dep.hsqldb.version> <dep.hsqldb.classifier /> <dep.slf4j.version>2.0.17</dep.slf4j.version> <!-- test dependencies --> <dep.junit.version>5.13.4</dep.junit.version> <!-- With Eclipse IDE Version: 2025-06 (4.36.0) due to incompatible JUnit stack in M2E: <dep.junit.version>5.10.0</dep.junit.version> --> <dep.assertj.version>3.27.6</dep.assertj.version> <dep.mockito.version>5.20.0</dep.mockito.version> <!-- override basepom versions --> <dep.plugin.central-publishing.version>0.8.0</dep.plugin.central-publishing.version> <!-- downgrade site plugin to work with site skin --> <dep.plugin.site.version>3.21.0</dep.plugin.site.version> <dep.plugin.maven-fluido-skin.version>2.1.0</dep.plugin.maven-fluido-skin.version> <!-- additional plugins not defined in parent --> <dep.plugin.sortpom.version>4.0.0</dep.plugin.sortpom.version> <dep.plugin.sonar.version>3.10.0.2594</dep.plugin.sonar.version> <basepom.deploy.snapshot.url>https://central.sonatype.com/repository/maven-snapshots/</basepom.deploy.snapshot.url> <basepom.check.skip-checkstyle>false</basepom.check.skip-checkstyle> <basepom.check.skip-pmd>false</basepom.check.skip-pmd> <basepom.check.skip-spotbugs>true</basepom.check.skip-spotbugs> <basepom.check.skip-license>true</basepom.check.skip-license> <basepom.javadoc.skip>false</basepom.javadoc.skip> <basepom.javadoc.show>protected</basepom.javadoc.show> <basepom.site.scm.branch>master</basepom.site.scm.branch> <basepom.site.skip-deploy>false</basepom.site.skip-deploy> </properties> <dependencyManagement> <dependencies> <dependency> <groupId>org.junit</groupId> <artifactId>junit-bom</artifactId> <version>${dep.junit.version}</version> <type>pom</type> <scope>import</scope> </dependency> </dependencies> </dependencyManagement> <dependencies> <dependency> <groupId>org.hsqldb</groupId> <artifactId>hsqldb</artifactId> <version>${dep.hsqldb.version}</version> <classifier>${dep.hsqldb.classifier}</classifier> </dependency> <dependency> <groupId>io.github.spannm</groupId> <artifactId>${dep.jackcess.artifactId}</artifactId> <version>${dep.jackcess.version}</version> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-jdk-platform-logging</artifactId> <version>${dep.slf4j.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.slf4j</groupId> <artifactId>slf4j-simple</artifactId> <version>${dep.slf4j.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-api</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-params</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.platform</groupId> <artifactId>junit-platform-launcher</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.platform</groupId> <artifactId>junit-platform-engine</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.jupiter</groupId> <artifactId>junit-jupiter-engine</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.junit.platform</groupId> <artifactId>junit-platform-commons</artifactId> <scope>test</scope> </dependency> <dependency> <groupId>org.assertj</groupId> <artifactId>assertj-core</artifactId> <version>${dep.assertj.version}</version> <scope>test</scope> </dependency> <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <version>${dep.mockito.version}</version> <scope>test</scope> </dependency> </dependencies> <build> <defaultGoal>clean verify</defaultGoal> <pluginManagement> <plugins> <plugin> <artifactId>maven-compiler-plugin</artifactId> <configuration> <compilerArgument>-Xlint:all</compilerArgument> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-surefire-plugin</artifactId> <configuration> <systemPropertyVariables combine.children="append"> <user.timezone /> </systemPropertyVariables> <forkCount>1</forkCount> <reuseForks>true</reuseForks> <forkedProcessTimeoutInSeconds>600</forkedProcessTimeoutInSeconds> <argLine>@{basepom.coverage.test-args} -Xmx1024m -Dfile.encoding=UTF-8</argLine> </configuration> </plugin> <plugin> <artifactId>maven-checkstyle-plugin</artifactId> <configuration> <configLocation>src/test/resources/team/checkstyle-rules.xml</configLocation> </configuration> </plugin> <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-pmd-plugin</artifactId> <configuration> <rulesets> <ruleset>src/test/resources/team/pmd-rules.xml</ruleset> </rulesets> </configuration> </plugin> <plugin> <groupId>com.github.ekryd.sortpom</groupId> <artifactId>sortpom-maven-plugin</artifactId> <version>${dep.plugin.sortpom.version}</version> <configuration> <createBackupFile>false</createBackupFile> <expandEmptyElements>false</expandEmptyElements> <nrOfIndentSpace>4</nrOfIndentSpace> </configuration> </plugin> </plugins> </pluginManagement> <plugins> <plugin> <!-- central-publishing-maven-plugin is the official tool for publishing artifacts to the new Sonatype Central Portal --> <groupId>org.sonatype.central</groupId> <artifactId>central-publishing-maven-plugin</artifactId> <!-- The <extensions>true</extensions> attribute tells Maven to include the plugin's code in the build lifecycle, allowing it to hook into specific phases and extend Maven's default behavior. This lets the plugin take over the standard deploy goal and implement its own logic for deploying to the new Sonatype Central Portal. --> <extensions>true</extensions> <configuration> <skipPublishing>false</skipPublishing> <publishingServerId>central</publishingServerId> <!-- do not automatically release staged artifacts to Maven Central. This is the recommended setting for releases, as it allows us to manually inspect the staged repository in the Central Portal before officially publishing. For Snapshots, this parameter has no effect, as they are immediately available upon deployment. --> <autoPublish>false</autoPublish> <!-- instructs the plugin to wait until Sonatype's portal validates the artifacts. This ensures that the build doesn't complete until the artifacts have passed initial quality checks. Other options like ready or published can be used to control the waiting time. --> <waitUntil>validated</waitUntil> <!-- let build fail if a publishing error occurs. This is a crucial safety measure to prevent incomplete or incorrect artifacts from being left in a staged repository --> <failOnBuildFailure>true</failOnBuildFailure> <!-- generates all available checksum types (e.g., MD5, SHA-1, SHA-256) for the deployed artifacts --> <checksums>all</checksums> </configuration> </plugin> <plugin> <!-- Create a shaded jar in system temp for inclusion in the distrib-zip assembly --> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-shade-plugin</artifactId> <executions> <execution> <id>uber-jar</id> <goals> <goal>shade</goal> </goals> <phase>package</phase> <configuration> <outputDirectory>${java.io.tmpdir}</outputDirectory> <shadedArtifactAttached>true</shadedArtifactAttached> <shadedClassifierName>${uber.jar.classifier.name}</shadedClassifierName> <createDependencyReducedPom>false</createDependencyReducedPom> <minimizeJar>false</minimizeJar> <transformers> <transformer implementation="org.apache.maven.plugins.shade.resource.ManifestResourceTransformer"> <mainClass>${ucanaccess.console.main}</mainClass> </transformer> </transformers> <!-- exclude selected Jars to reduce size of the Uber jar --> <filters> <filter> <artifact>*:*</artifact> <excludes> <!-- special handling for the META-INF directory --> <exclude>META-INF/maven/**</exclude> </excludes> </filter> </filters> <artifactSet> <excludes> <exclude>org.apache.poi:poi</exclude> <exclude>commons-codec:commons-codec</exclude> <exclude>org.apache.commons:commons-collections4</exclude> <exclude>org.apache.commons:commons-math3</exclude> <exclude>com.zaxxer</exclude> </excludes> </artifactSet> <relocations> <relocation> <pattern>${project.groupId}</pattern> <shadedPattern>shaded.${project.groupId}</shadedPattern> </relocation> <relocation> <pattern>org.hsqldb</pattern> <shadedPattern>shaded.org.hsqldb</shadedPattern> </relocation> </relocations> </configuration> </execution> </executions> </plugin> <plugin> <artifactId>maven-assembly-plugin</artifactId> <executions> <execution> <!-- mvn org.apache.maven.plugins:maven-assembly-plugin:single@distrib-zip-assembly --> <id>distrib-zip-assembly</id> <goals> <goal>single</goal> </goals> <phase>package</phase> <configuration> <descriptors> <descriptor>src/main/assembly/distrib-zip-assembly.xml</descriptor> </descriptors> <appendAssemblyId>true</appendAssemblyId> </configuration> </execution> </executions> </plugin> </plugins> </build> <profiles> <profile> <id>fast</id> <!-- Profile to skip time-consuming steps. --> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <!-- skip _compiling_ the tests --> <maven.test.skip>true</maven.test.skip> <!-- skip execution of tests --> <skipTests>true</skipTests> <maven.javadoc.skip>true</maven.javadoc.skip> <basepom.check.skip-extended>true</basepom.check.skip-extended> </properties> </profile> <profile> <id>github-deploy-snapshot-package</id> <distributionManagement> <snapshotRepository> <id>github</id> <name>${developerId} github packages</name> <url>https://maven.pkg.github.com/${developerId}/${project.artifactId}</url> </snapshotRepository> </distributionManagement> </profile> <profile> <!-- mvn verify -P sonarcloud --> <id>sonarcloud</id> <activation> <activeByDefault>false</activeByDefault> </activation> <properties> <sonar.skip>false</sonar.skip> <sonar.host.url>https://sonarcloud.io</sonar.host.url> <sonar.organization>spannm</sonar.organization> <!-- sonar.token>YOUR_TOKEN_HERE</sonar.token --> <basepom.test.skip>true</basepom.test.skip> <basepom.check.skip-all>true</basepom.check.skip-all> </properties> <build> <plugins> <plugin> <groupId>org.sonarsource.scanner.maven</groupId> <artifactId>sonar-maven-plugin</artifactId> <version>${dep.plugin.sonar.version}</version> <executions> <execution> <goals> <goal>sonar</goal> </goals> <phase>verify</phase> </execution> </executions> </plugin> </plugins> </build> </profile> <profile> <id>add-sonatype-snapshots-repo</id> <activation> <property> <name>performRelease</name> <value>!true</value> </property> </activation> <repositories> <repository> <snapshots> <enabled>true</enabled> </snapshots> <id>sonatype-nexus-snapshots</id> <name>Sonatype Nexus Snapshots</name> <url>${basepom.deploy.snapshot.url}</url> </repository> </repositories> </profile> <profile> <id>add-project-local-maven-repo</id> <!-- Profile to activate a local Maven repository in .m2-local-repo under the project's base dir. You must ensure the desired artificat(s) do not exist in the 'main' local m2 repository i.e. $HOME/.m2/repository/ --> <activation> <property> <name>performRelease</name> <value>!true</value> </property> </activation> <repositories> <repository> <snapshots> <enabled>true</enabled> </snapshots> <id>project-local-maven-repo-defined-in-pom</id> <name>Local file system Maven Repo for debugging</name> <url>file://${project.basedir}/.m2-local-repo/</url> </repository> </repositories> </profile> <profile> <id>release</id> <activation> <property> <name>performRelease</name> <value>true</value> </property> </activation> <build> <plugins> <plugin> <artifactId>maven-enforcer-plugin</artifactId> <configuration> <rules> <requireProperty> <property>dep.hsqldb.classifier</property> <regex>^$</regex> <regexMessage>hsqldb classifier must be blank during release (property dep.hsqldb.classifier)</regexMessage> </requireProperty> </rules> </configuration> </plugin> </plugins> </build> </profile> <!-- Profile activated automatically when building inside Eclipse IDE via m2e plugin. It sets properties specific to the Eclipse development environment, such as HSQLDB debug classifier and a compatible JUnit version. --> <profile> <id>eclipse-ide</id> <activation> <property> <name>m2e.version</name> </property> </activation> <properties> <dep.hsqldb.classifier>debug</dep.hsqldb.classifier> <dep.junit.version>5.10.0</dep.junit.version> </properties> </profile> </profiles> </project>