aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDecebal Suiu <decebal.suiu@gmail.com>2020-10-12 23:24:09 +0300
committerDecebal Suiu <decebal.suiu@gmail.com>2020-10-12 23:24:09 +0300
commit6e956335182bacfc478159b5f2a6f6697d266d9e (patch)
treee0d1ead15c54304175c49856422805f069d56279
parent597192ba5b041b29dc68e0181e13648f2cdcbb36 (diff)
downloadpf4j-6e956335182bacfc478159b5f2a6f6697d266d9e.tar.gz
pf4j-6e956335182bacfc478159b5f2a6f6697d266d9e.zip
Solve #440
-rw-r--r--pf4j/pom.xml4
-rw-r--r--pf4j/src/main/java/module-info.java47
2 files changed, 51 insertions, 0 deletions
diff --git a/pf4j/pom.xml b/pf4j/pom.xml
index a49aaf4..2232a2d 100644
--- a/pf4j/pom.xml
+++ b/pf4j/pom.xml
@@ -21,6 +21,10 @@
<artifactId>maven-compiler-plugin</artifactId>
<configuration>
<compilerArgument>-proc:none</compilerArgument>
+ <!-- Only required when JAVA_HOME isn't at least Java 9 and when haven't configured the maven-toolchains-plugin -->
+ <jdkToolchain>
+ <version>9</version>
+ </jdkToolchain>
</configuration>
<executions>
<!-- compile everything for Java 8 except the module-info.java -->
diff --git a/pf4j/src/main/java/module-info.java b/pf4j/src/main/java/module-info.java
new file mode 100644
index 0000000..754b9b8
--- /dev/null
+++ b/pf4j/src/main/java/module-info.java
@@ -0,0 +1,47 @@
+/*
+ * Copyright (C) 2012-present the original author or authors.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+/**
+ * Module descriptor for PF4J.
+ *
+ * @author Decebal Suiu
+ * @author Andreas Rudolph
+ */
+module org.pf4j {
+ requires java.base;
+
+ // provides javax.annotation
+ requires java.compiler;
+
+ // provided by the ASM library
+ requires org.objectweb.asm;
+
+ // The SLF4J library currently does not provide a module.
+ // Version 1.8 provides a module called "org.slf4j". But this version is
+ // currently in beta stage. Therefore I'm not sure, if we already like to
+ // use it.
+ requires slf4j.api;
+
+ // The java-semver library currently does not provide a module.
+ // Maybe we should send them a pull request, that at least they provide an
+ // automatic module name in their MANIFEST file.
+ requires java.semver;
+
+ // Maybe we should reconsider the package hierarchy, that only classes are
+ // exported, which are required by 3rd party developers.
+ exports org.pf4j;
+ exports org.pf4j.processor;
+}