org.fuin.jpmsr:jpmsr-parent

Maven plugin that provides UnixSystem values like UID or GID as project properties [PARENT].

License

License

GroupId

GroupId

org.fuin.jpmsr
ArtifactId

ArtifactId

jpmsr-parent
Last Version

Last Version

0.2.1
Release Date

Release Date

Type

Type

pom
Description

Description

Maven plugin that provides UnixSystem values like UID or GID as project properties [PARENT].
Project Organization

Project Organization

fuin.org (Germany)
Source Code Management

Source Code Management

https://github.com/fuinorg/jpms-readiness-maven-plugin/

Download jpmsr-parent

Filename Size
jpmsr-parent-0.2.1.pom 1 KB
Browse

How to add to project

<!-- https://jarcasting.com/artifacts/org.fuin.jpmsr/jpmsr-parent/ -->
<dependency>
    <groupId>org.fuin.jpmsr</groupId>
    <artifactId>jpmsr-parent</artifactId>
    <version>0.2.1</version>
    <type>pom</type>
</dependency>
// https://jarcasting.com/artifacts/org.fuin.jpmsr/jpmsr-parent/
implementation 'org.fuin.jpmsr:jpmsr-parent:0.2.1'
// https://jarcasting.com/artifacts/org.fuin.jpmsr/jpmsr-parent/
implementation ("org.fuin.jpmsr:jpmsr-parent:0.2.1")
'org.fuin.jpmsr:jpmsr-parent:pom:0.2.1'
<dependency org="org.fuin.jpmsr" name="jpmsr-parent" rev="0.2.1">
  <artifact name="jpmsr-parent" type="pom" />
</dependency>
@Grapes(
@Grab(group='org.fuin.jpmsr', module='jpmsr-parent', version='0.2.1')
)
libraryDependencies += "org.fuin.jpmsr" % "jpmsr-parent" % "0.2.1"
[org.fuin.jpmsr/jpmsr-parent "0.2.1"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

  • jpmsr-plugin
  • jpmsr-test

jpms-readiness-maven-plugin

Maven plugin that verifies the readiness of all dependencies in regard to the Java Platform Module System (JPMS)

Build Status Maven Central LGPLv3 License Java Development Kit 11

Background

Currently many libraries do not support Java modules. If you want to modularize your project, the libraries you depend on should

  • provide an automatic module name
  • or have a module-info

You can use this plugin to see which dependencies are compliant with this rule and which are not.

Run the plugin

Run the plugin in your project's root directory.

Either using Maven Wrapper:

./mvnw org.fuin.jpmsr:jpms-readiness-maven-plugin:0.2.1:verify

Or the classic Maven installation:

mvn org.fuin.jpmsr:jpms-readiness-maven-plugin:0.2.1:verify

Example output

The output should be similar to this example:

 [INFO] =============================================
 [INFO] Java Platform Module System (JPMS) Readiness:
 [INFO] =============================================
 [INFO] jakarta.xml.bind:jakarta.xml.bind-api:jar:2.3.2:compile => module-info
![WARNING] jakarta.ejb:jakarta.ejb-api:jar:3.2.6:compile => No module-info and no Automatic-Module-Name
 [INFO] jakarta.json:jakarta.json-api:jar:1.1.6:compile => module-info
 [INFO] jakarta.json.bind:jakarta.json.bind-api:jar:1.0.2:compile => module-info
![WARNING] jakarta.interceptor:jakarta.interceptor-api:jar:1.2.5:compile => No module-info and no Automatic-Module-Name
![WARNING] jakarta.mail:jakarta.mail-api:jar:1.6.4:compile => No module-info and no Automatic-Module-Name
 [INFO] jakarta.activation:jakarta.activation-api:jar:1.2.1:compile => Automatic-Module-Name
 [INFO] jakarta.validation:jakarta.validation-api:jar:2.0.2:compile => Automatic-Module-Name
 [INFO] jakarta.annotation:jakarta.annotation-api:jar:1.3.5:compile => Automatic-Module-Name
![WARNING] jakarta.enterprise:jakarta.enterprise.cdi-api:jar:2.0.2:compile => No module-info and no Automatic-Module-Name
 [INFO] jakarta.transaction:jakarta.transaction-api:jar:1.3.2:compile => Automatic-Module-Name
 [INFO] org.fuin:utils4j:jar:0.11.0-SNAPSHOT:compile => Automatic-Module-Name
 [INFO] jakarta.persistence:jakarta.persistence-api:jar:2.2.3:compile => Automatic-Module-Name
![WARNING] jakarta.inject:jakarta.inject-api:jar:1.0:compile => No module-info and no Automatic-Module-Name
 [INFO] =============================================

Snapshots

Snapshots can be found on the OSS Sonatype Snapshots Repository.

Add the following to your .m2/settings.xml (section "repositories") to enable snapshots in your Maven build:

<repository>
    <id>sonatype.oss.snapshots</id>
    <name>Sonatype OSS Snapshot Repository</name>
    <url>http://oss.sonatype.org/content/repositories/snapshots</url>
    <releases>
        <enabled>false</enabled>
    </releases>
    <snapshots>
        <enabled>true</enabled>
    </snapshots>
</repository>

An additional entry to the "pluginRepositories" section is also required:

<pluginRepository>
    <id>sonatype.oss.snapshots</id>
    <name>Sonatype OSS Snapshot Repository</name>
    <url>http://oss.sonatype.org/content/repositories/snapshots</url>
    <releases>
        <enabled>false</enabled>
    </releases>
    <snapshots>
        <enabled>true</enabled>
    </snapshots>
</pluginRepository>
org.fuin.jpmsr

fuin.org

Versions

Version
0.2.1
0.2.0