Skip to content

Commit 8459f89

Browse files
committed
Version 1.0 - move to 'org.gradlex'
1 parent 08752c9 commit 8459f89

25 files changed

+344
-117
lines changed

CHANGELOG.md

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
# Extra Java Module Info Gradle Plugin - Changelog
22

3+
## Version 1.0
4+
* Moved project to [GradleX](https://gradlex.org) - new plugin ID: `org.gradlex.extra-java-module-info`
5+
36
## Version 0.15
47
* [New] [#34](https://github.com/jjohannes/extra-java-module-info/issues/34) - Merge Jars - merge service provider files
58

CODE_OF_CONDUCT.md

Lines changed: 128 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,128 @@
1+
# Contributor Covenant Code of Conduct
2+
3+
## Our Pledge
4+
5+
We as members, contributors, and leaders pledge to make participation in our
6+
community a harassment-free experience for everyone, regardless of age, body
7+
size, visible or invisible disability, ethnicity, sex characteristics, gender
8+
identity and expression, level of experience, education, socio-economic status,
9+
nationality, personal appearance, race, religion, or sexual identity
10+
and orientation.
11+
12+
We pledge to act and interact in ways that contribute to an open, welcoming,
13+
diverse, inclusive, and healthy community.
14+
15+
## Our Standards
16+
17+
Examples of behavior that contributes to a positive environment for our
18+
community include:
19+
20+
* Demonstrating empathy and kindness toward other people
21+
* Being respectful of differing opinions, viewpoints, and experiences
22+
* Giving and gracefully accepting constructive feedback
23+
* Accepting responsibility and apologizing to those affected by our mistakes,
24+
and learning from the experience
25+
* Focusing on what is best not just for us as individuals, but for the
26+
overall community
27+
28+
Examples of unacceptable behavior include:
29+
30+
* The use of sexualized language or imagery, and sexual attention or
31+
advances of any kind
32+
* Trolling, insulting or derogatory comments, and personal or political attacks
33+
* Public or private harassment
34+
* Publishing others' private information, such as a physical or email
35+
address, without their explicit permission
36+
* Other conduct which could reasonably be considered inappropriate in a
37+
professional setting
38+
39+
## Enforcement Responsibilities
40+
41+
Community leaders are responsible for clarifying and enforcing our standards of
42+
acceptable behavior and will take appropriate and fair corrective action in
43+
response to any behavior that they deem inappropriate, threatening, offensive,
44+
or harmful.
45+
46+
Community leaders have the right and responsibility to remove, edit, or reject
47+
comments, commits, code, wiki edits, issues, and other contributions that are
48+
not aligned to this Code of Conduct, and will communicate reasons for moderation
49+
decisions when appropriate.
50+
51+
## Scope
52+
53+
This Code of Conduct applies within all community spaces, and also applies when
54+
an individual is officially representing the community in public spaces.
55+
Examples of representing our community include using an official e-mail address,
56+
posting via an official social media account, or acting as an appointed
57+
representative at an online or offline event.
58+
59+
## Enforcement
60+
61+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
62+
reported to the community leaders responsible for enforcement at
63+
64+
All complaints will be reviewed and investigated promptly and fairly.
65+
66+
All community leaders are obligated to respect the privacy and security of the
67+
reporter of any incident.
68+
69+
## Enforcement Guidelines
70+
71+
Community leaders will follow these Community Impact Guidelines in determining
72+
the consequences for any action they deem in violation of this Code of Conduct:
73+
74+
### 1. Correction
75+
76+
**Community Impact**: Use of inappropriate language or other behavior deemed
77+
unprofessional or unwelcome in the community.
78+
79+
**Consequence**: A private, written warning from community leaders, providing
80+
clarity around the nature of the violation and an explanation of why the
81+
behavior was inappropriate. A public apology may be requested.
82+
83+
### 2. Warning
84+
85+
**Community Impact**: A violation through a single incident or series
86+
of actions.
87+
88+
**Consequence**: A warning with consequences for continued behavior. No
89+
interaction with the people involved, including unsolicited interaction with
90+
those enforcing the Code of Conduct, for a specified period of time. This
91+
includes avoiding interactions in community spaces as well as external channels
92+
like social media. Violating these terms may lead to a temporary or
93+
permanent ban.
94+
95+
### 3. Temporary Ban
96+
97+
**Community Impact**: A serious violation of community standards, including
98+
sustained inappropriate behavior.
99+
100+
**Consequence**: A temporary ban from any sort of interaction or public
101+
communication with the community for a specified period of time. No public or
102+
private interaction with the people involved, including unsolicited interaction
103+
with those enforcing the Code of Conduct, is allowed during this period.
104+
Violating these terms may lead to a permanent ban.
105+
106+
### 4. Permanent Ban
107+
108+
**Community Impact**: Demonstrating a pattern of violation of community
109+
standards, including sustained inappropriate behavior, harassment of an
110+
individual, or aggression toward or disparagement of classes of individuals.
111+
112+
**Consequence**: A permanent ban from any sort of public interaction within
113+
the community.
114+
115+
## Attribution
116+
117+
This Code of Conduct is adapted from the [Contributor Covenant][homepage],
118+
version 2.0, available at
119+
https://www.contributor-covenant.org/version/2/0/code_of_conduct.html.
120+
121+
Community Impact Guidelines were inspired by [Mozilla's code of conduct
122+
enforcement ladder](https://github.com/mozilla/diversity).
123+
124+
[homepage]: https://www.contributor-covenant.org
125+
126+
For answers to common questions about this code of conduct, see the FAQ at
127+
https://www.contributor-covenant.org/faq. Translations are available at
128+
https://www.contributor-covenant.org/translations.

README.md

Lines changed: 14 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,32 @@
1+
# Extra Java Module Info Gradle plugin
2+
3+
[![Build Status](https://img.shields.io/endpoint.svg?url=https%3A%2F%2Factions-badge.atrox.dev%2Fgradlex-org%2Fextra-java-module-info%2Fbadge%3Fref%3Dmain&style=flat)](https://actions-badge.atrox.dev/gradlex-org/extra-java-module-info/goto?ref=main)
4+
[![Gradle Plugin Portal](https://img.shields.io/maven-metadata/v?label=Plugin%20Portal&metadataUrl=https%3A%2F%2Fplugins.gradle.org%2Fm2%2Forg%2Fgradlex%extra-java-module-info%2Forg.gradlex.extra-java-module-info%2Fmaven-metadata.xml)](https://plugins.gradle.org/plugin/org.gradlex.extra-java-module-info)
5+
16
A Gradle 6.4+ plugin to use legacy Java libraries as _Java Modules_ in a modular Java project.
27

3-
This plugin is maintained by me, [Jendrik Johannes](https://github.com/jjohannes).
8+
This [GradleX](https://gradlex.org) plugin is maintained by me, [Jendrik Johannes](https://github.com/jjohannes).
49
I offer consulting and training for Gradle and/or the Java Module System - please [reach out](mailto:[email protected]) if you are interested.
510
There is also my [YouTube channel](https://www.youtube.com/playlist?list=PLWQK2ZdV4Yl2k2OmC_gsjDpdIBTN0qqkE) on Gradle topics.
611

712
Special thanks goes to [Ihor Herasymenko](https://github.com/iherasymenko) who has been contributing many features and fixes to this plugin!
813

9-
If you have a suggestion or a question, please [open an issue](https://github.com/jjohannes/extra-java-module-info/issues/new).
14+
If you have a suggestion or a question, please [open an issue](https://github.com/gradlex-org/extra-java-module-info/issues/new).
1015

1116
There is a [CHANGELOG.md](CHANGELOG.md).
1217

1318
# Java Modules with Gradle
1419

1520
If you plan to build Java Modules with Gradle, you should consider using these plugins on top of Gradle core:
1621

17-
- [`id("de.jjohannes.java-module-dependencies")`](https://github.com/jjohannes/java-module-dependencies)
22+
- [`id("org.gradlex.java-module-dependencies")`](https://github.com/gradlex-org/java-module-dependencies)
1823
Avoid duplicated dependency definitions and get your Module Path under control
19-
- [`id("de.jjohannes.java-module-testing")`](https://github.com/jjohannes/java-module-testing)
24+
- [`id("org.gradlex.java-module-testing")`](https://github.com/gradlex-org/java-module-testing)
2025
Proper test setup for Java Modules
21-
- [`id("de.jjohannes.extra-java-module-info")`](https://github.com/jjohannes/extra-java-module-info)
26+
- [`id("org.gradlex.extra-java-module-info")`](https://github.com/gradlex-org/extra-java-module-info)
2227
Only if your (existing) project cannot avoid using non-module legacy Jars
2328

24-
[Here is a sample](https://github.com/jjohannes/java-module-testing/tree/main/samples/use-all-java-module-plugins)
29+
[Here is a sample](https://github.com/gradlex-org/java-module-testing/tree/main/samples/use-all-java-module-plugins)
2530
that shows all plugins in combination.
2631

2732
[Full Java Module System Project Setup](https://github.com/jjohannes/gradle-project-setup-howto/tree/java_module_system) is a full-fledged Java Module System project setup using these plugins.
@@ -42,7 +47,7 @@ Add this to the build file of your convention plugin's build
4247

4348
```
4449
dependencies {
45-
implementation("de.jjohannes.gradle:extra-java-module-info:0.15")
50+
implementation("org.gradlex:extra-java-module-info:1.0")
4651
}
4752
```
4853

@@ -52,7 +57,7 @@ In your convention plugin, apply the plugin and define the additional module inf
5257
```
5358
plugins {
5459
...
55-
id("de.jjohannes.extra-java-module-info")
60+
id("org.gradlex.extra-java-module-info")
5661
}
5762
5863
// add module information for all direct and transitive dependencies that are not modules
@@ -98,7 +103,7 @@ Sample uses Gradle's Kotlin DSL (`build.gradle.kts` file). The Groovy DSL syntax
98103
## How do I deactivate the plugin functionality for a certain classpath?
99104

100105
This can be useful for the test classpath if it should be used for unit testing on the classpath (rather than the module path).
101-
If you use the [shadow plugin](https://plugins.gradle.org/plugin/com.github.johnrengelman.shadow) and [encounter this issue](https://github.com/jjohannes/extra-java-module-info/issues/7),
106+
If you use the [shadow plugin](https://plugins.gradle.org/plugin/com.github.johnrengelman.shadow) and [encounter this issue](https://github.com/gradlex-org/extra-java-module-info/issues/7),
102107
you can deactivate it for the runtime classpath as the module information is irrelevant for a fat Jar in any case.
103108

104109
**Kotlin DSL**

build.gradle.kts

Lines changed: 14 additions & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,10 @@
11
plugins {
2-
id("com.gradle.plugin-publish") version "1.0.0-rc-2"
32
id("groovy")
3+
id("org.gradlex.internal.plugin-publish-conventions") version "0.4"
44
}
55

6-
group = "de.jjohannes.gradle"
7-
version = "0.15"
6+
group = "org.gradlex"
7+
version = "1.0"
88

99
java {
1010
sourceCompatibility = JavaVersion.VERSION_1_8
@@ -17,51 +17,17 @@ dependencies {
1717
testImplementation("org.spockframework:spock-core:2.1-groovy-3.0")
1818
}
1919

20-
val pluginId = "de.jjohannes.extra-java-module-info"
21-
val pluginClass = "de.jjohannes.gradle.javamodules.ExtraModuleInfoPlugin"
22-
val pluginName = "Extra Java Module Info Gradle Plugin"
23-
val pluginDescription = "Add module information to legacy Java libraries."
24-
val pluginBundleTags = listOf("java", "modularity", "jigsaw", "jpms")
25-
val pluginGitHub = "https://github.com/jjohannes/extra-java-module-info"
26-
27-
gradlePlugin {
28-
plugins {
29-
create(project.name) {
30-
id = pluginId
31-
implementationClass = pluginClass
32-
displayName = pluginName
33-
description = pluginDescription
34-
}
35-
}
36-
}
37-
38-
pluginBundle {
39-
website = pluginGitHub
40-
vcsUrl = pluginGitHub
41-
tags = pluginBundleTags
42-
}
43-
44-
publishing {
45-
publications.withType<MavenPublication>().all {
46-
pom.name.set(pluginName)
47-
pom.description.set(pluginDescription)
48-
pom.url.set(pluginGitHub)
49-
pom.licenses {
50-
license {
51-
name.set("Apache License, Version 2.0")
52-
url.set("http://www.apache.org/licenses/LICENSE-2.0.txt")
53-
}
54-
}
55-
pom.developers {
56-
developer {
57-
id.set("jjohannes")
58-
name.set("Jendrik Johannes")
59-
email.set("[email protected]")
60-
}
61-
}
62-
pom.scm {
63-
url.set(pluginGitHub)
64-
}
20+
pluginPublishConventions {
21+
id("${project.group}.${project.name}")
22+
implementationClass("org.gradlex.javamodule.moduleinfo.ExtraJavaModuleInfoPlugin")
23+
displayName("Extra Java Module Info Gradle Plugin")
24+
description("Add module information to legacy Java libraries.")
25+
tags("gradlex", "java", "modularity", "jigsaw", "jpms")
26+
gitHub("https://github.com/gradlex-org/extra-java-module-info")
27+
developer {
28+
id.set("jjohannes")
29+
name.set("Jendrik Johannes")
30+
email.set("[email protected]")
6531
}
6632
}
6733

config/HEADER.txt

Lines changed: 0 additions & 13 deletions
This file was deleted.

gradle/checkstyle/checkstyle.xml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
<!DOCTYPE module PUBLIC
2+
"-//Puppy Crawl//DTD Check Configuration 1.2//EN"
3+
"http://www.puppycrawl.com/dtds/configuration_1_2.dtd">
4+
<module name="Checker">
5+
<module name="Header">
6+
<property name="headerFile" value="${config_loc}/header.txt"/>
7+
</module>
8+
</module>

gradle/checkstyle/header.txt

Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
/*
2+
* Copyright 2022 the GradleX team.
3+
*
4+
* Licensed under the Apache License, Version 2.0 (the "License");
5+
* you may not use this file except in compliance with the License.
6+
* You may obtain a copy of the License at
7+
*
8+
* http://www.apache.org/licenses/LICENSE-2.0
9+
*
10+
* Unless required by applicable law or agreed to in writing, software
11+
* distributed under the License is distributed on an "AS IS" BASIS,
12+
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13+
* See the License for the specific language governing permissions and
14+
* limitations under the License.
15+
*/
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
distributionBase=GRADLE_USER_HOME
22
distributionPath=wrapper/dists
3-
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5-rc-1-bin.zip
3+
distributionUrl=https\://services.gradle.org/distributions/gradle-7.5.1-bin.zip
44
zipStoreBase=GRADLE_USER_HOME
55
zipStorePath=wrapper/dists

settings.gradle.kts

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,12 @@ dependencyResolutionManagement {
99
}
1010

1111
gradleEnterprise {
12-
buildScan {
13-
publishAlways()
14-
termsOfServiceUrl = "https://gradle.com/terms-of-service"
15-
termsOfServiceAgree = "yes"
12+
val runsOnCI = providers.environmentVariable("CI").getOrElse("false").toBoolean()
13+
if (runsOnCI) {
14+
buildScan {
15+
publishAlways()
16+
termsOfServiceUrl = "https://gradle.com/terms-of-service"
17+
termsOfServiceAgree = "yes"
18+
}
1619
}
1720
}

src/main/java/de/jjohannes/gradle/javamodules/AutomaticModuleName.java

Lines changed: 0 additions & 8 deletions
This file was deleted.

0 commit comments

Comments
 (0)