Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/alexfalappa/nb-springboot
NetBeans IDE plugin supporting programming with Spring Boot
https://github.com/alexfalappa/nb-springboot
netbeans netbeans-ide netbeans-plugin spring spring-boot spring-data spring-mvc
Last synced: about 1 month ago
JSON representation
NetBeans IDE plugin supporting programming with Spring Boot
- Host: GitHub
- URL: https://github.com/alexfalappa/nb-springboot
- Owner: AlexFalappa
- License: apache-2.0
- Created: 2016-04-20T18:12:12.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-06-05T12:38:16.000Z (over 1 year ago)
- Last Synced: 2024-10-12T02:40:14.506Z (about 1 month ago)
- Topics: netbeans, netbeans-ide, netbeans-plugin, spring, spring-boot, spring-data, spring-mvc
- Language: Java
- Homepage:
- Size: 1.67 MB
- Stars: 156
- Watchers: 16
- Forks: 42
- Open Issues: 26
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
# NB-SpringBoot
NetBeans IDE plugin supporting programming with [Spring Boot](http://projects.spring.io/spring-boot).
## Requirements and Installation
This plugin requires **NetBeans 8.2** or above running on **JDK 8** or above.
To perform a manual install download the desired `nbm` package from the [releases page](https://github.com/AlexFalappa/nb-springboot/releases) , go to *Tools > Plugins > Downloaded* and click the *Add Plugins...* button. Choose the downloaded `nbm` package file then click *Install*.
The plugin may be available in the *Plugin Portal Update Center* thus it can be downloaded and installed trough *Tools > Plugins > Available Plugins*. Please note that new releases become available on the *Update Center* after they are verified by the folks at the *NetBeans Plugin Portal*. Note that current NetBeans Plugin Portal (http://plugins.netbeans.org) is undergoing migration at Apache Foundation. A new plugin portal is being set-up (currently at http://netbeans-vm.apache.org/pluginportal but subject to change) and may become the new official source of plugins.
## Features
- *Spring Boot* Maven project wizards:
- Basic project
- Project generated trough the *Spring Initializr* service (https://start.spring.io)
- Specific editor for configuration properties files with:
- extended syntax highlighting (dot separated keys, array notation)
- error highlighting for: syntax errors, duplicate properties, data type mismatches and unknown properties
- quick fixes for: removing deprecated, unknown and duplicate properties or substituting deprecated properties with their replacement
- completion and documentation of configuration properties names and values (with support of [hint value providers](https://docs.spring.io/spring-boot/docs/current/reference/html/appendix-configuration-metadata.html#value-providers) defined in configuration metadata)
- Java editor error highlighting and fixes for missing starter dependencies:
- @ConfigurationProperties annotation without `spring-boot-configuration-processor` dependency
- Imports of Spring MVC annotations and Spring Data interfaces without relevant starter dependencies (e.g. `JpaRepository` without `spring-boot-starter-data-jpa` dependency)
- Code templates:
- Java templates for web request mapping annotations, WebFlux router functions and `CommandLineRunner` beans
- Configuration properties templates for commonly used sets of properties
- *Spring Boot* file templates:
- `CommandlineRunner` classes
- `ApplicationRunner` classes
- `application.properties` files
- `additional-spring-configuration-metadata.json` files
- `@ConfigurationProperties` annotated classes
- *Spring Boot Actuator* file templates:
- Actuator endpoints
- Classes implementing `InfoContributor`
- Classes implementing `HealthIndicator`
- Additional *Spring Framework* file templates:
- `@Component` annotated classes
- `@Configuration` annotated classes
- `@Service` annotated classes
- `@Controller` annotated classes (Spring MVC)
- `@RestController` annotated classes (Spring MVC)
- Reactive `@RestController` annotated classes (Spring WebFlux)
- Reactive handler classes (Spring WebFlux)
- Interfaces extending `Repository` both imperative and reactive (Spring Data)
- Additional code generators in `pom.xml` files:
- Add Spring Boot dependencies (dependency metadata is taken from the *Spring Initializr* web service)
- Add basic Spring Boot setup
- Toolbar button to trigger *Spring Boot* devtools reload
- Custom *Spring Boot* project properties page to:
- Specify command line run arguments and launch VM options
- Enable/disable manual devtools reload trigger
- Toggle debug mode and color output
- Assisted override of configuration properties at launch
- Additional navigator panel to show request URL mappings of a `Controller` / `RestController` class## Issues and Documentation
Bug tracking: [GitHub Issues](https://github.com/AlexFalappa/nb-springboot/issues)
Getting Started: [Quick Tour](https://github.com/AlexFalappa/nb-springboot/wiki/Quick-Tour)
Reference: [GitHub Wiki](https://github.com/AlexFalappa/nb-springboot/wiki)
## License
The plugin and its source code are licensed under [Apache 2.0 license](http://www.apache.org/licenses/LICENSE-2.0).
## Acknowledgements
Completion of Spring Boot configuration properties feature is based on [Keevosh plugin](https://github.com/keevosh/nb-springboot-configuration-support).
Templates and code generators were inspired by those found on [Spring Boot Tools 4 NetBeans](https://github.com/GeertjanWielenga/SpringBootTools4NetBeans).
Requestmappings navigator panel feature contributed by [Michael Simons](https://github.com/michael-simons).
Badge on projects icon feature initially contributed by [Hector Espert](https://github.com/blackleg).
## Changelog
See [the separate file](CHANGELOG.md)