Skip to content

dashaun/initializr-plusplus

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Contributors Forks Stargazers Issues License

tagged-linux tagged-windows tagged-macos

initializr-plusplus

CLI for making changes to Spring Initializr projects.

  • Use Spring Initializr it is awesome, I highly recommend it.
  • Then get your project to production.
  • This tool decreases the amount of time between T-Initialize and T-Production
    • This improves the Fifth Metric Mean Time To Dopamine (MTTD)
  • This tool provides commands via CLI and interactive shell
    • Add the maven-git-versioning-extension and os-maven-plugin as Maven Extensions
    • Update the project-description
    • Update the project-name
    • Update the project-version
    • Enable all actuator management endpoints
    • Update spring-cloud-function-context to a specific starter

Quick Start

Download the latest release and put it on your path.

# Download  curl -L https://github.com/dashaun/initializr-plusplus/releases/download/v#.#.#/initializr-plusplus-linux-amd64 --output initializr-plusplus # Download and extract an example project from start.sprint.io curl https://start.spring.io/starter.tgz -d dependencies=web,data-jpa -d type=maven-project -d baseDir=./ | tar -xzvf - # Use help command ./initializr-plusplus help # Add extensions ./initializr-plusplus extensions # Interactive mode ./initializr-plusplus

Usage

AVAILABLE COMMANDS Application Config Commands expose-mgmt: expose all management endpoints via web Built-In Commands help: Display help about available commands stacktrace: Display the full stacktrace of the last error. clear: Clear the shell screen. quit, exit: Exit the shell. history: Display or save the history of previously run commands version: Show version info script: Read and execute commands from a file. Cloud Function Example hello-world-function-bean: Update DemoApplication with 'Hello World' @Bean Function Maven Extension Commands extensions: add mvn extensions and config Pipeline Commands multi-arch-manifests: pipelines to create multi-architecture manifests Pom File Commands native-maven-plugin: Support for GraalVM native-image compiler. multi-arch-builder: Add multi-architecture builder support. project-name: Update the project name spring-format: Add Spring Java Format Maven Plugin and validate goal. spring-rest-docs: Add Spring REST Docs project-version: Update the project version lambda-profile: Add AWS Lambda profile for Spring Cloud Functions webflux-profile: Add a 'webflux' profile for Spring Cloud Functions zulu-builder: Use Zulu JDK for spring-boot:build-image with JVM args project-description: Update the project description Read Me Commands add-read-me: add ReadMe.md file 

Built with:

Develop

Normal build

  • ./mvnw clean package
  • java -jar target/plusplus-0.0.2.jar or
  • ./mvnw spring-boot:run

Native build

  • ./mvnw -Pnative clean native:compile -DskipTests

Release

  • git tag v#.#.#
  • git push origin v#.#.#

gh release upload v#.#.# target/initializr-plusplus-$OS-$ARCH

Roadmap

See the open issues for a list of proposed features (and known issues).

Notes

Before running native:compile on Windows

C:\Program Files (x86)\Microsoft Visual Studio\2019\BuildTools\VC\Auxiliary\Build\vcvars64.bat

Contributing

Pull-requests are welcomed!

License

Distributed under the Apache-2.0 License. See LICENSE for more information.

About

CLI used to consistently modify applications generated by Spring Initializr

Topics

Resources

License

Stars

Watchers

Forks

Contributors 2

  •  
  •  

Languages