Skip to content

microsphere-projects/microsphere-build

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Microsphere Build

Ask DeepWiki Maven Build Maven License Average time to resolve an issue Percentage of issues still open

Introduction

Microsphere Build is a Java Maven parent POM with common build settings, plugins configuration, etc, which is used for Microsphere Projects, like Microsphere Java, Microsphere Spring, etc.

Features

Microsphere Build supports the following features:

  • Language Support
  • Plugins Management
  • Profiles Management
  • Project Settings

Language Support

Microsphere Build supports the Maven project building on Java TLS versions:

  • 8
  • 11
  • 17
  • 21
  • 25

Plugins Management

Default Inherited Plugins

Profile-Specific Plugins

Maven Profile publish Plugins (Recommended, since 0.2.0)

As of June 30, 2025 OSSRH has reached end of life and has been shut down. All OSSRH namespaces have been migrated to Central Publisher Portal.

See Publishing By Using the Maven Plugin.

Maven Profile release Plugins

If you want to release the Java artifacts using OSSRH staging API, please see Publishing By Using the Portal OSSRH Staging API.

Maven Profile ci Plugins
Maven Profile test Plugins
Maven Profile coverage Plugins
Maven Profile docs Plugins

Profiles Management

  • publish (Recommended, since 0.2.0)
  • release (Legacy)
  • ci
  • test
  • coverage
  • docs
  • java8+ (activated by JDK version)
  • java9+ (activated by JDK version)
  • java11+ (activated by JDK version)
  • java9-15 (activated by JDK version)
  • java16+ (activated by JDK version)
  • java17+ (activated by JDK version)

2.4 Project Settings

2.4.1 Default Settings

2.4.1.1 Resources Settings
<resources>
    <resource>
        <directory>src/main/java</directory>
        <filtering>true</filtering>
        <includes>
            <include>**/*.properties</include>
            <include>**/*.xml</include>
        </includes>
    </resource>
    <resource>
        <directory>src/main/resources</directory>
        <filtering>true</filtering>
        <includes>
            <include>**/*</include>
        </includes>
    </resource>
</resources>

Profiles Settings

Maven Profile java8+ Settings

Maven JavaDoc Plugin will be added the options -Xdoclint:none.

Maven Checkstyle Plugin's version : 9.3

Maven Profile java9+ Settings

Maven Compiler Plugin's property maven.compiler.release references on the another property ${java.version}.

Maven Profile java11+ Settings

Maven JavaDoc Plugin will use the configuration source based on the property ${maven.compiler.source}.

Maven Checkstyle Plugin's version : 10.26.1

Maven Profile java9-15 Settings

Maven Surefire Plugin will append the argument line --illegal-access=permit for accessing to internal classes

Maven Profile java16+ Settings

Maven Surefire Plugin will append the argument line --add-opens=java.base/java.lang=ALL-UNNAMED --add-opens=java.base/java.lang.invoke=ALL-UNNAMED for accessing to JDK modules' classes.

Maven Profile java17+ Settings

Maven Checkstyle Plugin's version : 11.1.0

Usage

Java 8+ Maven Project

The root project's pom.xml should set the parent as follows:

    <parent>
        <groupId>io.github.microsphere-projects</groupId>
        <artifactId>microsphere-build</artifactId>
        <version>0.2.1</version>
    </parent>

About

Common build settings, plugins configuration, etc. for Microsphere Projects

Topics

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Contributors 2

  •  
  •