├── .github
├── dependabot.yml
├── release-drafter.yml
└── workflows
│ ├── maven.yml
│ └── release-drafter.yml
├── .gitignore
├── .mvn
└── .keep-me
├── README.md
├── config-assembly.xml
├── pom.xml
└── src
├── main
└── config
│ ├── checkstyle
│ ├── asf20-header.txt
│ ├── empty-header.txt
│ └── mit-header.txt
│ └── pmd
│ └── mojo_rules.xml
└── site
├── markdown
└── index.md.vm
└── site.xml
/.github/dependabot.yml:
--------------------------------------------------------------------------------
1 | version: 2
2 | updates:
3 | - package-ecosystem: "maven"
4 | directory: "/"
5 | schedule:
6 | interval: "daily"
7 | ignore:
8 | # Ignore Maven Core updates
9 | - dependency-name: "org.apache.maven:*"
10 | # Checkstyle >=10 requires Java 11+
11 | - dependency-name: "com.puppycrawl.tools:checkstyle"
12 | versions: [">= 10.0"]
13 | open-pull-requests-limit: 10
14 | - package-ecosystem: "github-actions"
15 | directory: "/"
16 | schedule:
17 | interval: "daily"
18 |
--------------------------------------------------------------------------------
/.github/release-drafter.yml:
--------------------------------------------------------------------------------
1 | _extends: .github
2 | # mojo-parent uses a single version number, no semantic versioning
3 | version-template: '$MAJOR'
4 |
--------------------------------------------------------------------------------
/.github/workflows/maven.yml:
--------------------------------------------------------------------------------
1 | # Licensed to the Apache Software Foundation (ASF) under one
2 | # or more contributor license agreements. See the NOTICE file
3 | # distributed with this work for additional information
4 | # regarding copyright ownership. The ASF licenses this file
5 | # to you under the Apache License, Version 2.0 (the
6 | # "License"); you may not use this file except in compliance
7 | # with the License. You may obtain a copy of the License at
8 | #
9 | # http://www.apache.org/licenses/LICENSE-2.0
10 | #
11 | # Unless required by applicable law or agreed to in writing,
12 | # software distributed under the License is distributed on an
13 | # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14 | # KIND, either express or implied. See the License for the
15 | # specific language governing permissions and limitations
16 | # under the License.
17 |
18 | name: GitHub CI
19 |
20 | on: [push, pull_request]
21 |
22 | jobs:
23 | build:
24 | name: Build
25 | runs-on: ubuntu-latest
26 |
27 | strategy:
28 | fail-fast: false
29 | matrix:
30 | jdk: [ 8, 21 ]
31 |
32 | steps:
33 | - name: Checkout
34 | uses: actions/checkout@v4
35 |
36 | - name: Set up JDK
37 | uses: actions/setup-java@v4
38 | with:
39 | java-version: ${{ matrix.jdk }}
40 | distribution: 'temurin'
41 | cache: 'maven'
42 |
43 | - name: Build with Maven
44 | run: mvn -e -B -V verify site
45 |
46 | # deploy:
47 | # name: Deploy
48 | # needs: build
49 | # uses: mojohaus/.github/.github/workflows/maven-deploy.yml@master
50 | # secrets: inherit
51 |
52 |
53 |
--------------------------------------------------------------------------------
/.github/workflows/release-drafter.yml:
--------------------------------------------------------------------------------
1 | name: Release Drafter
2 | on:
3 | push:
4 | branches:
5 | - master
6 | workflow_dispatch:
7 |
8 | jobs:
9 | update_release_draft:
10 | uses: apache/maven-gh-actions-shared/.github/workflows/release-drafter.yml@v4
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | #
2 | # MojoHaus: Standard gitignore file for Java and Maven development.
3 | #
4 |
5 | ### Custom entries ###
6 | /bootstrap
7 | .java-version
8 | /dependencies.xml
9 |
10 | ### OSX ###
11 | .DS_Store
12 | .AppleDouble
13 | .LSOverride
14 |
15 | # Icon must end with two \r
16 | Icon
17 |
18 |
19 | # Thumbnails
20 | ._*
21 |
22 | # Files that might appear on external disk
23 | .Spotlight-V100
24 | .Trashes
25 |
26 | # Directories potentially created on remote AFP share
27 | .AppleDB
28 | .AppleDesktop
29 | Network Trash Folder
30 | Temporary Items
31 | .apdisk
32 |
33 |
34 | ### Windows ###
35 | # Windows image file caches
36 | Thumbs.db
37 | ehthumbs.db
38 |
39 | # Folder config file
40 | Desktop.ini
41 |
42 | # Recycle Bin used on file shares
43 | $RECYCLE.BIN/
44 |
45 | # Windows Installer files
46 | *.cab
47 | *.msi
48 | *.msm
49 | *.msp
50 |
51 | # Windows shortcuts
52 | *.lnk
53 |
54 |
55 | ### Linux ###
56 | *~
57 |
58 | # KDE directory preferences
59 | .directory
60 |
61 |
62 | ### Eclipse ###
63 | *.pydevproject
64 | .metadata
65 | .gradle
66 | bin/
67 | tmp/
68 | *.tmp
69 | *.bak
70 | *.swp
71 | *~.nib
72 | local.properties
73 | .settings/
74 | .loadpath
75 | .project
76 | .classpath
77 |
78 | # External tool builders
79 | .externalToolBuilders/
80 |
81 | # Locally stored "Eclipse launch configurations"
82 | *.launch
83 |
84 | # CDT-specific
85 | .cproject
86 |
87 | # PDT-specific
88 | .buildpath
89 |
90 | # sbteclipse plugin
91 | .target
92 |
93 | # TeXlipse plugin
94 | .texlipse
95 |
96 |
97 | ### NetBeans ###
98 | nbproject/private/
99 | build/
100 | nbbuild/
101 | dist/
102 | nbdist/
103 | nbactions.xml
104 | nb-configuration.xml
105 |
106 |
107 | ### Intellij ###
108 | # Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm
109 |
110 | *.iml
111 |
112 | ## Directory-based project format:
113 | .idea/
114 | # if you remove the above rule, at least ignore the following:
115 |
116 | # User-specific stuff:
117 | # .idea/workspace.xml
118 | # .idea/tasks.xml
119 | # .idea/dictionaries
120 |
121 | # Sensitive or high-churn files:
122 | # .idea/dataSources.ids
123 | # .idea/dataSources.xml
124 | # .idea/sqlDataSources.xml
125 | # .idea/dynamic.xml
126 | # .idea/uiDesigner.xml
127 |
128 | # Gradle:
129 | # .idea/gradle.xml
130 | # .idea/libraries
131 |
132 | # Mongo Explorer plugin:
133 | # .idea/mongoSettings.xml
134 |
135 | ## File-based project format:
136 | *.ipr
137 | *.iws
138 |
139 | ## Plugin-specific files:
140 |
141 | # IntelliJ
142 | out/
143 |
144 | # mpeltonen/sbt-idea plugin
145 | .idea_modules/
146 |
147 | # JIRA plugin
148 | atlassian-ide-plugin.xml
149 |
150 | # Crashlytics plugin (for Android Studio and IntelliJ)
151 | com_crashlytics_export_strings.xml
152 | crashlytics.properties
153 | crashlytics-build.properties
154 |
155 |
156 | ### vim ###
157 | [._]*.s[a-w][a-z]
158 | [._]s[a-w][a-z]
159 | *.un~
160 | Session.vim
161 | .netrwhist
162 | *~
163 |
164 |
165 | ### Maven ###
166 | target/
167 | pom.xml.tag
168 | pom.xml.releaseBackup
169 | pom.xml.versionsBackup
170 | pom.xml.next
171 | release.properties
172 | ### Karma ###
173 | node/
174 | node_modules/
175 |
176 |
177 | ### Java ###
178 | *.class
179 |
180 | # Mobile Tools for Java (J2ME)
181 | .mtj.tmp/
182 |
183 | # Package Files #
184 | *.jar
185 | *.war
186 | *.ear
187 |
188 | # virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
189 | hs_err_pid*
190 |
191 |
192 | ### Python ###
193 | # Byte-compiled / optimized / DLL files
194 | __pycache__/
195 | *.py[cod]
196 |
197 | # C extensions
198 | *.so
199 |
200 | # Distribution / packaging
201 | .Python
202 | env/
203 | build/
204 | develop-eggs/
205 | dist/
206 | downloads/
207 | eggs/
208 | lib/
209 | lib64/
210 | parts/
211 | sdist/
212 | var/
213 | *.egg-info/
214 | .installed.cfg
215 | *.egg
216 |
217 | # PyInstaller
218 | # Usually these files are written by a python script from a template
219 | # before PyInstaller builds the exe, so as to inject date/other infos into it.
220 | *.manifest
221 | *.spec
222 |
223 | # Installer logs
224 | pip-log.txt
225 | pip-delete-this-directory.txt
226 |
227 | # Unit test / coverage reports
228 | htmlcov/
229 | .tox/
230 | .coverage
231 | .cache
232 | nosetests.xml
233 | coverage.xml
234 |
235 | # Translations
236 | *.mo
237 | *.pot
238 |
239 | # Django stuff:
240 | *.log
241 |
242 | # Sphinx documentation
243 | docs/_build/
244 |
245 | # PyBuilder
246 | target/
247 |
248 |
249 | ### CVS ###
250 | /CVS/*
251 | */CVS/*
252 | .cvsignore
253 | */.cvsignore
254 |
255 |
256 | ### SVN ###
257 | .svn/
258 |
259 |
260 | ### Mercurial ###
261 | /.hg/*
262 | */.hg/*
263 | .hgignore
264 |
265 | ### Takari Maven Wrapper ###
266 | /mvnw.bat
267 | /mvnw
268 | .mvn/wrapper
269 |
270 |
--------------------------------------------------------------------------------
/.mvn/.keep-me:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mojohaus/mojo-parent/7914e85c158d60b74e0f53dbe3b32c39b72b6cd0/.mvn/.keep-me
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # MojoHaus Parent
2 |
3 | This is the parent pom for all [MojoHaus](https://www.mojohaus.org) Maven plugins and components.
4 |
5 | [](https://search.maven.org/artifact/org.codehaus.mojo/mojo-parent)
6 | [](https://github.com/mojohaus/mojo-parent/actions/workflows/maven.yml)
7 |
8 | ## Releasing
9 |
10 | * Make sure `gpg-agent` is running.
11 | * Execute `mvn -B release:prepare release:perform`
12 |
13 | For publishing the site, do the following (assuming mono-module project):
14 |
15 | ```
16 | cd target/checkout
17 | mvn verify site site:stage scm-publish:publish-scm
18 | ```
19 |
20 |
--------------------------------------------------------------------------------
/config-assembly.xml:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 | config
7 |
8 |
9 | jar
10 |
11 |
12 | false
13 |
14 |
15 |
16 | src/main/config
17 | mojohaus/config
18 |
19 |
20 |
21 |
--------------------------------------------------------------------------------
/pom.xml:
--------------------------------------------------------------------------------
1 |
2 |
20 |
21 | 4.0.0
22 |
23 | org.codehaus.mojo
24 | mojo-parent
25 | 92-SNAPSHOT
26 | pom
27 |
28 | MojoHaus Parent
29 | Parent POM for all MojoHaus hosted Apache Maven plugins and components.
30 | https://www.mojohaus.org/${project.artifactId}
31 |
32 | MojoHaus
33 | https://www.mojohaus.org
34 |
35 |
36 |
37 | Apache-2.0
38 | https://www.apache.org/licenses/LICENSE-2.0.txt
39 | repo
40 |
41 |
42 |
43 |
44 |
45 | aheritier
46 | Arnaud Heritier
47 | https://github.com/aheritier
48 | MojoHaus
49 | https://github.com/mojohaus
50 |
51 |
52 | Batmat
53 | Baptiste Mathus
54 | https://github.com/Batmat
55 | MojoHaus
56 | https://github.com/mojohaus
57 |
58 |
59 | davidkarlsen
60 | David Karlsen
61 | https://github.com/davidkarlsen
62 | MojoHaus
63 | https://github.com/mojohaus
64 |
65 |
66 | Godin
67 | Evgeny Mandrikov
68 | https://github.com/Godin
69 | MojoHaus
70 | https://github.com/mojohaus
71 |
72 |
73 | hboutemy
74 | Hervé Boutemy
75 | https://github.com/hboutemy
76 | MojoHaus
77 | https://github.com/mojohaus
78 |
79 |
80 | khmarbaise
81 | Karl-Heinz Marbaise
82 | https://github.com/khmarbaise
83 | MojoHaus
84 | https://github.com/mojohaus
85 |
86 |
87 | lennartj
88 | Lennart Jörelid
89 | https://github.com/lennartj
90 | MojoHaus
91 | https://github.com/mojohaus
92 |
93 |
94 | mfriedenhagen
95 | Mirko Friedenhagen
96 | https://github.com/mfriedenhagen
97 | MojoHaus
98 | https://github.com/mojohaus
99 |
100 |
101 | andham
102 | Anders Hammar
103 | https://github.com/andham
104 | MojoHaus
105 | https://github.com/mojohaus
106 |
107 |
108 | olamy
109 | Olivier Lamy
110 | https://github.com/olamy
111 | MojoHaus
112 | https://github.com/mojohaus
113 |
114 |
115 | sjaranowski
116 | Slawomir Jaranowski
117 | https://github.com/slawekjaranowski
118 | MojoHaus
119 | https://github.com/mojohaus
120 |
121 |
122 | slachiewicz
123 | Sylwester Lachiewicz
124 | https://github.com/slachiewicz
125 |
126 |
127 |
128 |
129 |
130 | MojoHaus Development List
131 | mojohaus-dev+subscribe@googlegroups.com
132 | mojohaus-dev+unsubscribe@googlegroups.com
133 | mojohaus-dev@googlegroups.com
134 | https://groups.google.com/forum/#!forum/mojohaus-dev
135 |
136 |
137 | Maven User List
138 | mailto:users-subscribe@maven.apache.org
139 | mailto:users-unsubscribe@maven.apache.org
140 | mailto:users@maven.apache.org
141 | https://lists.apache.org/list.html?users@maven.apache.org
142 |
143 |
144 |
145 |
146 | scm:git:https://github.com/mojohaus/mojo-parent.git
147 | scm:git:https://github.com/mojohaus/mojo-parent.git
148 | 74
149 | https://github.com/mojohaus/mojo-parent/tree/${project.scm.tag}
150 |
151 |
152 | GitHub
153 | https://github.com/mojohaus/${project.artifactId}/issues
154 |
155 |
156 | GitHub
157 | https://github.com/mojohaus/${project.artifactId}/actions
158 |
159 |
160 |
161 |
162 | sonatype-central-portal
163 | Sonatype Central Portal
164 | https://repo.maven.apache.org/maven2
165 |
166 |
167 | sonatype-central-portal
168 | Sonatype Central Snapshots
169 | https://central.sonatype.com/repository/maven-snapshots
170 |
171 |
172 | github
173 | scm:git:ssh://git@github.com/mojohaus/mojo-parent.git
174 |
175 |
176 |
177 |
178 | UTF-8
179 | 8
180 | ${mojo.java.target}
181 | ${mojo.java.target}
182 | true
183 |
184 | ${mojo.java.target}
185 | ${mavenVersion}
186 | 3.6.3
187 |
188 | UTF-8
189 |
190 | true
191 |
192 | true
193 | 1.24
194 | 3.6.0
195 | 1.7.0
196 | 1.1.0
197 | 2.5.0
198 | 3.1.0
199 | 3.7.1
200 | 2.11
201 | 3.6.0
202 | 3.5.0
203 | 3.14.0
204 | 3.8.1
205 | 3.1.4
206 | 3.3.0
207 | 3.5.0
208 | 3.5.3
209 | 2.1.0
210 | 3.2.7
211 | 3.5.1
212 | 3.1.4
213 | 3.9.0
214 | 3.4.2
215 | 3.11.2
216 | 3.6.0
217 | 3.15.1
218 | 3.9.0
219 | 3.19.0
220 | 3.1.1
221 | 3.3.1
222 | 3.3.0
223 | 3.6.0
224 | 3.21.0
225 | 3.3.1
226 | 3.5.3
227 | 3.5.3
228 | 3.4.0
229 | 3.3.2
230 | 0.7.1
231 | 1.6.0
232 | 2.5.0
233 | 2.2.0
234 | 3.2.1
235 | 2.18.0
236 | 0.9.0.M4
237 | 2.44.5
238 | 2025-06-02T19:00:39Z
239 |
240 | ${project.reporting.outputDirectory}
241 | 5.13.0
242 |
243 | 9.3
244 |
245 | config/maven_checks_nocodestyle.xml
246 |
247 | true
248 |
249 |
250 | true
251 | automatic
252 | true
253 | false
254 |
255 |
256 |
257 |
258 |
259 | org.apache.maven
260 | maven-plugin-api
261 |
262 | ${mavenVersion}
263 |
264 |
265 | junit
266 | junit
267 | 4.13.2
268 | test
269 |
270 |
271 | org.junit
272 | junit-bom
273 | ${junit5.version}
274 | pom
275 | import
276 |
277 |
278 | org.apache.maven.plugin-tools
279 | maven-plugin-annotations
280 |
281 | ${maven-plugin-plugin.version}
282 |
283 |
284 |
285 |
286 |
287 |
288 |
289 |
290 | eu.maveniverse.maven.plugins
291 | njord
292 | ${njord.version}
293 |
294 |
295 |
296 | org.apache.maven.plugins
297 | maven-antrun-plugin
298 | ${maven-antrun-plugin.version}
299 |
300 |
301 | org.apache.maven.plugins
302 | maven-assembly-plugin
303 | ${maven-assembly-plugin.version}
304 |
305 |
306 | org.apache.maven.plugins
307 | maven-checkstyle-plugin
308 | ${maven-checkstyle-plugin.version}
309 |
310 |
311 | src/main/java
312 |
313 |
314 | src/test/java
315 |
316 | true
317 | ${checkstyle.config.location}
318 |
319 | mojohaus/config/checkstyle/empty-header.txt
320 |
321 |
322 |
323 | org.apache.maven.shared
324 | maven-shared-resources
325 | 6
326 |
327 |
328 | org.codehaus.mojo
329 | mojo-parent
330 | 92-SNAPSHOT
331 | config
332 |
333 |
334 | com.puppycrawl.tools
335 | checkstyle
336 | ${checkstyle.version}
337 |
338 |
339 |
340 |
341 |
342 | check
343 |
344 | process-sources
345 |
346 |
347 |
348 |
349 | org.apache.maven.plugins
350 | maven-clean-plugin
351 | ${maven-clean-plugin.version}
352 |
353 |
354 | org.apache.maven.plugins
355 | maven-compiler-plugin
356 | ${maven-compiler-plugin.version}
357 |
358 |
359 | org.apache.maven.plugins
360 | maven-dependency-plugin
361 | ${maven-dependency-plugin.version}
362 |
363 |
364 | org.apache.maven.plugins
365 | maven-deploy-plugin
366 | ${maven-deploy-plugin.version}
367 |
368 |
369 | org.apache.maven.plugins
370 | maven-enforcer-plugin
371 | ${maven-enforcer-plugin.version}
372 |
373 |
374 | org.apache.maven.plugins
375 | maven-help-plugin
376 | ${maven-help-plugin.version}
377 |
378 |
379 | org.apache.maven.plugins
380 | maven-gpg-plugin
381 | ${maven-gpg-plugin.version}
382 |
383 |
384 | org.apache.maven.plugins
385 | maven-install-plugin
386 | ${maven-install-plugin.version}
387 |
388 |
389 | org.apache.maven.plugins
390 | maven-invoker-plugin
391 | ${maven-invoker-plugin.version}
392 |
393 | ${invoker.streamLogsOnFailures}
394 |
395 |
396 |
397 | org.apache.maven.plugins
398 | maven-jar-plugin
399 | ${maven-jar-plugin.version}
400 |
401 |
402 |
403 | true
404 | true
405 |
406 |
407 |
408 |
409 |
410 | org.apache.maven.plugins
411 | maven-war-plugin
412 | ${maven-war-plugin.version}
413 |
414 |
415 | org.apache.maven.plugins
416 | maven-ear-plugin
417 | ${maven-ear-plugin.version}
418 |
419 |
420 | org.apache.maven.plugins
421 | maven-javadoc-plugin
422 | ${maven-javadoc-plugin.version}
423 |
424 | true
425 | en
426 |
427 |
428 |
429 | org.apache.maven.plugins
430 | maven-jxr-plugin
431 | ${maven-jxr-plugin.version}
432 |
433 |
434 | org.apache.maven.plugins
435 | maven-plugin-plugin
436 | ${maven-plugin-plugin.version}
437 |
438 |
439 | java-annotations
440 |
441 |
442 |
443 |
444 | help-mojo
445 |
446 | helpmojo
447 |
448 |
449 |
450 |
451 |
452 | org.apache.maven.plugins
453 | maven-plugin-report-plugin
454 | ${maven-plugin-plugin.version}
455 |
456 |
457 | org.apache.maven.plugins
458 | maven-project-info-reports-plugin
459 | ${maven-project-info-reports-plugin.version}
460 |
461 |
462 | org.apache.maven.plugins
463 | maven-release-plugin
464 | ${maven-release-plugin.version}
465 |
466 |
467 | deploy
468 | -Pmojo-release
469 | true
470 | @{project.version}
471 |
472 |
473 |
474 | org.apache.maven.plugins
475 | maven-resources-plugin
476 | ${maven-resources-plugin.version}
477 |
478 |
479 | org.apache.maven.plugins
480 | maven-scm-publish-plugin
481 | ${maven-scm-publish-plugin.version}
482 |
483 | ${project.scm.developerConnection}
484 | gh-pages
485 |
486 |
487 |
488 | scm-publish
489 |
490 | publish-scm
491 |
492 |
493 | site-deploy
494 |
495 |
496 |
497 |
498 | org.apache.maven.plugins
499 | maven-shade-plugin
500 | ${maven-shade-plugin.version}
501 |
502 |
503 | org.apache.maven.plugins
504 | maven-site-plugin
505 | ${maven-site-plugin.version}
506 |
507 |
508 | true
509 |
510 |
511 |
512 | org.apache.maven.plugins
513 | maven-source-plugin
514 | ${maven-source-plugin.version}
515 |
516 |
517 | org.apache.maven.plugins
518 | maven-surefire-plugin
519 | ${maven-surefire-plugin.version}
520 |
521 | ${surefire.redirectTestOutputToFile}
522 |
523 |
524 |
525 | org.apache.maven.plugins
526 | maven-failsafe-plugin
527 | ${maven-failsafe-plugin.version}
528 |
529 |
530 | org.apache.maven.plugins
531 | maven-surefire-report-plugin
532 | ${maven-surefire-report-plugin.version}
533 |
534 |
535 | org.apache.maven.plugins
536 | maven-wrapper-plugin
537 | ${maven-wrapper-plugin.version}
538 |
539 |
540 |
541 |
542 | org.codehaus.mojo
543 | animal-sniffer-maven-plugin
544 | ${animal-sniffer-maven-plugin.version}
545 |
546 |
547 | org.codehaus.mojo
548 | build-helper-maven-plugin
549 | ${build-helper-maven-plugin.version}
550 |
551 |
552 | org.codehaus.mojo
553 | flatten-maven-plugin
554 | ${flatten-maven-plugin.version}
555 |
556 |
557 | org.codehaus.mojo
558 | l10n-maven-plugin
559 | ${l10n-maven-plugin.version}
560 |
561 |
562 | org.codehaus.mojo
563 | license-maven-plugin
564 | ${license-maven-plugin.version}
565 |
566 |
567 | org.codehaus.modello
568 | modello-maven-plugin
569 | ${modello-maven-plugin.version}
570 |
571 |
572 | org.codehaus.mojo
573 | mrm-maven-plugin
574 | ${mrm-maven-plugin.version}
575 |
576 |
577 | org.codehaus.plexus
578 | plexus-component-metadata
579 | ${plexus-component-metadata.version}
580 |
581 |
582 | org.codehaus.mojo
583 | taglist-maven-plugin
584 | ${taglist-maven-plugin.version}
585 |
586 |
587 | org.codehaus.mojo
588 | versions-maven-plugin
589 | ${versions-maven-plugin.version}
590 |
591 |
592 | org.eclipse.sisu
593 | sisu-maven-plugin
594 | ${sisu-maven-plugin.version}
595 |
596 |
597 | generate-index
598 |
599 | main-index
600 | test-index
601 |
602 |
603 |
604 |
605 |
606 | com.diffplug.spotless
607 | spotless-maven-plugin
608 | ${spotless-maven-plugin.version}
609 |
610 |
611 |
612 |
613 |
614 |
615 |
616 | javax,java,,\#
617 |
618 |
619 |
620 |
621 | false
622 |
623 | true
624 |
625 |
626 |
627 |
628 | **/*.md
629 |
630 |
631 | target/**
632 |
633 |
634 |
635 |
636 | true
637 |
638 |
639 |
640 |
641 | spotless-check
642 |
643 | check
644 |
645 | process-sources
646 |
647 |
648 |
649 |
650 |
651 |
652 |
653 |
654 | org.apache.maven.plugins
655 | maven-enforcer-plugin
656 |
657 |
658 | mojo-enforcer-rules
659 |
660 | enforce
661 |
662 | validate
663 |
664 |
665 |
666 |
667 | org.codehaus.plexus:plexus-component-api
668 |
669 | The plexus-component-api conflicts with the plexus-container-default used by Maven. You probably added a dependency that is missing the exclusions.
670 |
671 |
672 | Mojo is synchronized with repo1.maven.org. The rules for repo1.maven.org are that pom.xml files should not include repository definitions. If repository definitions are included, they must be limited to SNAPSHOT only repositories.
673 | true
674 | true
675 | true
676 |
677 | sonatype-central-portal
678 | apache.snapshots
679 |
680 |
681 |
682 | Best Practice is to always define plugin versions!
683 | true
684 | true
685 |
686 |
687 | ${minimalMavenBuildVersion}
688 | You need at least Maven ${minimalMavenBuildVersion} to build MojoHaus projects.
689 |
690 |
691 | ${minimalJavaBuildVersion}
692 |
693 |
694 | project.scm.connection
695 |
698 | scm:git:https://github.com/.*\.git.*
699 | https (scm:git:https://github.com/.*\.git) is the preferred protocol for project.scm.connection, current value: ${project.scm.connection}
700 |
701 |
702 | project.scm.url
703 |
706 | https://github.com/.*
707 | Use https://github.com/.* as project.scm.url, especially using the prefix scm:git here will lead to unbrowseable links during site generation, current value: ${project.scm.url}
708 |
709 |
710 |
711 |
712 |
713 |
714 |
715 | com.diffplug.spotless
716 | spotless-maven-plugin
717 |
718 |
719 | spotless-check
720 |
721 | check
722 |
723 | validate
724 |
725 |
726 |
727 |
728 | org.apache.maven.plugins
729 | maven-site-plugin
730 | false
731 |
732 |
733 | attach-descriptor
734 |
735 | attach-descriptor
736 |
737 |
738 |
739 |
740 |
741 | org.apache.maven.plugins
742 | maven-assembly-plugin
743 |
744 |
745 | assembly-configuration
746 |
747 | single
748 |
749 | package
750 | false
751 |
752 |
753 |
754 | true
755 | true
756 |
757 |
758 |
759 | config-assembly.xml
760 |
761 |
762 |
763 |
764 |
765 |
766 |
767 |
768 | eu.maveniverse.maven.njord
769 | extension
770 | ${njord.version}
771 |
772 |
773 |
774 |
775 |
776 |
777 | jdk8
778 |
779 | [1.8,11)
780 |
781 |
782 |
783 | 2.30.0
784 |
785 |
786 |
787 | java11+
788 |
789 | [11,)
790 |
791 |
792 | ${mojo.java.target}
793 |
794 |
795 |
796 |
797 | mojo-release
798 |
799 |
800 |
801 | 3.9.0
802 |
803 | true
804 |
805 |
806 |
807 |
808 | org.apache.maven.plugins
809 | maven-assembly-plugin
810 |
811 |
812 | org.apache.apache.resources
813 | apache-source-release-assembly-descriptor
814 | 1.7
815 |
816 |
817 |
818 |
819 | attach-source-release-distro
820 |
821 | single
822 |
823 | package
824 |
825 | true
826 |
827 | source-release
828 |
829 |
830 |
831 |
832 |
833 |
834 | org.apache.maven.plugins
835 | maven-deploy-plugin
836 |
837 |
838 | org.apache.maven.plugins
839 | maven-source-plugin
840 |
841 |
842 | default-jar-no-fork
843 |
844 | jar-no-fork
845 |
846 |
847 |
848 |
849 |
850 | org.apache.maven.plugins
851 | maven-javadoc-plugin
852 |
853 | false
854 |
855 |
856 |
857 | attach-javadocs
858 |
859 | jar
860 |
861 |
862 |
863 |
864 |
865 | org.apache.maven.plugins
866 | maven-gpg-plugin
867 |
868 |
869 | sign-artifacts
870 |
871 | sign
872 |
873 | verify
874 |
875 |
876 |
877 |
878 |
879 |
880 |
881 | reporting
882 |
883 |
884 | skipReports
885 | !true
886 |
887 |
888 |
889 |
890 |
891 |
892 | org.apache.maven.plugins
893 | maven-javadoc-plugin
894 | ${maven-javadoc-plugin.version}
895 |
896 |
897 |
898 | javadoc-no-fork
899 |
900 |
901 |
902 |
903 |
904 | org.apache.maven.plugins
905 | maven-plugin-report-plugin
906 |
907 |
908 |
909 | report
910 |
911 |
912 |
913 |
914 |
915 | org.apache.maven.plugins
916 | maven-project-info-reports-plugin
917 | ${maven-project-info-reports-plugin.version}
918 |
919 |
920 |
921 | ci-management
922 | dependencies
923 | dependency-convergence
924 | dependency-info
925 | dependency-management
926 | index
927 | issue-management
928 | licenses
929 | mailing-lists
930 | plugin-management
931 | scm
932 | team
933 | summary
934 |
935 |
936 |
937 |
938 |
939 |
940 |
941 |
942 |
943 |
--------------------------------------------------------------------------------
/src/main/config/checkstyle/asf20-header.txt:
--------------------------------------------------------------------------------
1 | ^package
2 |
3 | ^/\*$
4 | ^ \* Copyright
5 | ^ \*$
6 | ^ \* Licensed under the Apache License, Version 2.0 \(the "License"\);$
7 | ^ \* you may not use this file except in compliance with the License.$
8 | ^ \* You may obtain a copy of the License at$
9 | ^ \*$
10 | ^ \* https?://www.apache.org/licenses/LICENSE-2.0$
11 | ^ \*$
12 | ^ \* Unless required by applicable law or agreed to in writing, software$
13 | ^ \* distributed under the License is distributed on an "AS IS" BASIS,$
14 | ^ \* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.$
15 | ^ \* See the License for the specific language governing permissions and$
16 | ^ \* limitations under the License.$
17 | ^ \*/$
18 |
--------------------------------------------------------------------------------
/src/main/config/checkstyle/empty-header.txt:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/mojohaus/mojo-parent/7914e85c158d60b74e0f53dbe3b32c39b72b6cd0/src/main/config/checkstyle/empty-header.txt
--------------------------------------------------------------------------------
/src/main/config/checkstyle/mit-header.txt:
--------------------------------------------------------------------------------
1 | ^package
2 |
3 | ^/\*$
4 | ^ \* The MIT License$
5 | ^ \*$
6 | ^ \* Copyright
7 | ^ \*$
8 | ^ \* Permission is hereby granted, free of charge, to any person obtaining a copy of$
9 | ^ \* this software and associated documentation files (the "Software"), to deal in$
10 | ^ \* the Software without restriction, including without limitation the rights to$
11 | ^ \* use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies$
12 | ^ \* of the Software, and to permit persons to whom the Software is furnished to do$
13 | ^ \* so, subject to the following conditions:$
14 | ^ \*$
15 | ^ \* The above copyright notice and this permission notice shall be included in all$
16 | ^ \* copies or substantial portions of the Software.$
17 | ^ \*$
18 | ^ \* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR$
19 | ^ \* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,$
20 | ^ \* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE$
21 | ^ \* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER$
22 | ^ \* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,$
23 | ^ \* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE$
24 | ^ \* SOFTWARE.
25 | ^ \*/$
26 |
--------------------------------------------------------------------------------
/src/main/config/pmd/mojo_rules.xml:
--------------------------------------------------------------------------------
1 |
2 |
7 |
8 |
12 |
13 |
14 | This ruleset checks the code for discouraged programming constructs.
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
--------------------------------------------------------------------------------
/src/site/markdown/index.md.vm:
--------------------------------------------------------------------------------
1 | Parent POM for all MojoHaus hosted Apache Maven plugins and components.
2 |
3 | Latest build status: [](https://github.com/mojohaus/mojo-parent/actions/workflows/maven.yml)
4 |
5 | Changelog
6 | =========
7 |
8 | [GitHub report](https://github.com/mojohaus/mojo-parent/releases/tag/${project.scm.tag})
9 |
10 | How to use the POM
11 | ==================
12 |
13 | * for general information about using a parent pom take a look at https://maven.apache.org/guides/introduction/introduction-to-the-pom.html.
14 | * it boils down to define a parent element in your own POM:
15 |
16 | ```xml
17 |
18 |
20 | 4.0.0
21 |
22 | org.codehaus.mojo
23 | mojo-parent
24 | ${project.version}
25 |
26 | sample-groupId
27 | sample-project
28 | 1-SNAPSHOT
29 | [...]
30 |
31 | ```
32 |
33 | Spotless - automatic code formatting
34 | ====================================
35 |
36 | `MojoHaus` Parent POM contains configuration for [spotless-maven-plugin](https://github.com/diffplug/spotless/tree/main/plugin-maven)
37 | with options:
38 |
39 | - [palantir](https://github.com/palantir/palantir-java-format) code formatter
40 | - imports order as:
41 | - javax
42 | - java
43 | - other imports
44 | - static import
45 |
46 | `spotless` will be activated in your project per default, if you don't want to use it
47 |
48 | ```xml
49 |
50 | true
51 |
52 |
53 | ```
54 |
55 | To fix code, simply run:
56 | ```
57 | mvn spotless:apply
58 | ```
59 |
60 | Checkstyle
61 | ==========
62 |
63 | You can use `checkstyle` in order to verify code on each build.
64 |
65 | Checkstyle can be enabled by adding to build/plugins`:
66 |
67 | ```xml
68 |
69 | org.apache.maven.plugins
70 | maven-checkstyle-plugin
71 |
72 | ```
73 |
74 | Big code reformat
75 | =================
76 |
77 | After applying bigger reformatting it is recommended to add or update a `.git-blame-ignore-revs` file
78 | in the root of the repository containing a line with the SHA1 of the formatting commit to ignore those changes
79 | when using `git blame` (or equivalent concepts).
80 |
81 | This is automatically considered by [GitHub](https://docs.github.com/en/repositories/working-with-files/using-files/viewing-a-file#bypassing-git-blame-ignore-revs-in-the-blame-view)
82 | and can optionally be considered with [local `git blame`](https://git-scm.com/docs/git-blame#Documentation/git-blame.txt---ignore-revs-fileltfilegt)
83 |
84 |
85 | Latest releases
86 | ===============
87 |
88 | ... may be found at [Maven Central](https://search.maven.org/search?q=g%3Aorg.codehaus.mojo%20AND%20a%3Amojo-parent%20AND%20p%3Apom).
89 |
90 | Deploy site to github
91 | =====================
92 |
93 | To deploy a site to github using [maven-scm-publish-plugin](https://maven.apache.org/plugins/maven-scm-publish-plugin/):
94 |
95 | * Add a new branch `gh-pages` [manually](https://help.github.com/articles/creating-project-pages-manually).
96 | * Add `src/site/resources/.nojekyll` [to add hidden files (e.g. for jacoco)](https://illegalstateexception.blogspot.de/2013/01/publishing-maven-site-having-jacoco.html) as well.
97 | * Then after a release do:
98 |
99 | ```
100 | cd target/checkout
101 | mvn -Preporting verify site-deploy
102 | ```
103 |
104 |
--------------------------------------------------------------------------------
/src/site/site.xml:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 | org.apache.maven.skins
31 | maven-fluido-skin
32 | ${maven-fluido-skin.version}
33 |
34 |
35 | ${project.scm.url}
36 |
37 |
38 |
39 | 18
40 | https://analytics.apache.org/
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 | mojohaus/${project.artifactId}
50 | right
51 | gray
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
--------------------------------------------------------------------------------