Skip to content

Commit 82d88a6

Browse files
committed
Make maven friendly with KMP.
1 parent 638c055 commit 82d88a6

File tree

2 files changed

+35
-26
lines changed

2 files changed

+35
-26
lines changed

README.md

+5
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,11 @@
7878

7979
# Changelog
8080
## [Unreleased]
81+
### Changed
82+
- Removed `com.diffplug.eclipse.apt` from `base/autovalue` since we have mostly moved to IntelliJ.
83+
- Bump all plugins to latest, especially Kotlin to `1.9.21`
84+
### Fixed
85+
- Maven plugin is now friendly with Kotlin Multiplatform.
8186

8287
## [7.1.0] - 2023-06-15
8388
### Added

src/main/resources/base/maven.gradle

+30-26
Original file line numberDiff line numberDiff line change
@@ -19,39 +19,43 @@ def license_name = 干.prop('base/maven', "${license}_name")
1919
def license_url =.prop('base/maven', "${license}_url")
2020
def license_comments =.prop('base/maven', "${license}_comments")
2121

22-
java {
23-
withJavadocJar()
24-
withSourcesJar()
25-
}
22+
boolean isKMP = project.pluginManager.hasPlugin('org.jetbrains.kotlin.multiplatform')
23+
if (!isKMP) {
24+
java {
25+
withJavadocJar()
26+
withSourcesJar()
27+
}
2628

27-
tasks.named('sourcesJar') {
28-
dependsOn 'jar'
29-
}
29+
tasks.named('sourcesJar') {
30+
dependsOn 'jar'
31+
}
3032

31-
javadoc {
32-
def makeLink = { url, text -> "<a href=\"${url}\" style=\"text-transform: none;\">${text}</a>" }
33-
def javadocInfo = '<h2>' + makeLink("https://${git_url}", "${maven_artifact}:${version}") +
34-
' by ' + makeLink('https://www.diffplug.com', 'DiffPlug') + '</h2>';
35-
// Where it's possible to name parameters and methods clearly enough
36-
// that javadoc is not necessary, why make the code bigger?
37-
// Thus, no javadoc warnings.
38-
options.addStringOption('Xdoclint:none', '-quiet')
39-
// UTF-8!!! Thanks to: https://github.com/freefair/gradle-plugins/blob/6d6f5ff6036e7da1c329075a02c6452c0bb669be/maven-plugin/src/main/java/io/freefair/gradle/plugins/maven/javadoc/JavadocUtf8Plugin.java
40-
options.charSet('UTF-8');
41-
options.docEncoding('UTF-8');
42-
options.setEncoding('UTF-8');
43-
// setup the header
44-
options.header javadocInfo
45-
options.footer javadocInfo
46-
// setup links
47-
options.links(javadocLinks)
33+
javadoc {
34+
def makeLink = { url, text -> "<a href=\"${url}\" style=\"text-transform: none;\">${text}</a>" }
35+
def javadocInfo = '<h2>' + makeLink("https://${git_url}", "${maven_artifact}:${version}") +
36+
' by ' + makeLink('https://www.diffplug.com', 'DiffPlug') + '</h2>';
37+
// Where it's possible to name parameters and methods clearly enough
38+
// that javadoc is not necessary, why make the code bigger?
39+
// Thus, no javadoc warnings.
40+
options.addStringOption('Xdoclint:none', '-quiet')
41+
// UTF-8!!! Thanks to: https://github.com/freefair/gradle-plugins/blob/6d6f5ff6036e7da1c329075a02c6452c0bb669be/maven-plugin/src/main/java/io/freefair/gradle/plugins/maven/javadoc/JavadocUtf8Plugin.java
42+
options.charSet('UTF-8');
43+
options.docEncoding('UTF-8');
44+
options.setEncoding('UTF-8');
45+
// setup the header
46+
options.header javadocInfo
47+
options.footer javadocInfo
48+
// setup links
49+
options.links(javadocLinks)
50+
}
51+
apply from: 干.file('helper/javadoc-view.gradle')
4852
}
49-
apply from: 干.file('helper/javadoc-view.gradle')
53+
5054

5155
boolean isPlugin = plugins.hasPlugin('java-gradle-plugin')
5256
publishing.publications.register(isPlugin ? 'pluginMaven' : 'mavenJava', MavenPublication, {
5357
artifactId = maven_artifact
54-
if (!isPlugin) {
58+
if (!isPlugin && !isKMP) {
5559
from components.java
5660
}
5761
pom {

0 commit comments

Comments
 (0)