Spring Boot CLI — это инструмент командной строки для быстрой разработки приложений Spring. бежать
Groovy
(Аналогично стилю Java) script.
spring-cli, похоже, не является инструментом, который может создавать различные параметры и поведение командной строки программы spring-boot, но выполняет groovy-скрипты для быстрого достижения некоторых эффектов.
Версия
SpringBoot-2.2.0.RELEASE
Установить
отОфициальный сайтскачатьspring-cli
Установите, а затем настройте каталог bin с переменными среды. Установка может быть завершенаspring version
Посмотреть версию.
использовать
Запустите приложение с помощью CLI
Создайте новый файл (например, hello.groovy) со следующим содержимым:
@RestController
class ThisWillActuallyRun{
@RequestMapping("/")
String home(){
"Hello World!"
}
}
Запустите команду:spring run hello.groovy
, первая загрузка различных зависимостей происходит относительно медленно, а затем она будет запущена напрямую. В приведенном здесь примере веб-служба запускается с использованием порта по умолчанию. посетивhttp://127.0.0.1:8080/Получите данные возврата.
Вы также можете запустить команду:spring run hello.groovy -- --server.port=9000
для указания аргументов командной строки. Примечание: для использования--
для разделения команд и аргументов.
Чтобы установить параметры командной строки JVM, вы можете использоватьJAVA_OPTS
переменные среды, как показано ниже:
# linux
JAVA_OPTS=-Xmx1024m spring run hello.groovy
# windows
set "JAVA_OPTS=-Xms256m -Xmx2048m"
Предполагаемые зависимости
Например: согласно@Controller
или @RestController
или @EnableWebMvc
сделать вывод, используяSpring MVC + Embedded Tomcat
Оператор импорта по умолчанию
Для краткости многие операторы импорта выполняются автоматически.
Автоматически выводить основной метод
Groovy-скрипты не должны содержать метод main, как Java-приложения,SpringApplication
автоматически создается, выполняя ваш скомпилированный код как ресурс.
пользовательское управление зависимостями
Декларация управления зависимостями по умолчанию находится вspring-boot-dependencies
, через@DependencyManagementBom
Конфигурация, значение аннотации требует, чтобы указанное значение удовлетворяло выражению:groupId:artifactId:version
@DependencyManagementBom("io.spring.platform:platform-bom:1.1.2.RELEASE")
@DependencyManagementBom(["com.example:custom-bom:1.0.0","com.example:another-bom:1.0.0"])
Запуск нескольких файлов ресурсов
spring run *.groovy
Пакетные приложения
spring java my-app.jar *.groovy
Сгенерированный jar содержит классы, сгенерированные скомпилированным приложением, и все зависимости приложения, чтобы его можно было запустить с помощью java-jar. Файл jar также содержит записи из пути к классам приложения. можно использовать--include
а также--exclude
Добавляйте и удаляйте явные пути для упаковки в jar-файлы. Ресурсы, включенные по умолчанию, следующие:
public/**, resources/**, static/**, templates/**, META-INF/**, *
Исключения по умолчанию следующие:
.*, repository/**, build/**, target/**, **/*.jar, **/*.groovy
Инициализировать новый проект
init
Команда позволяет вам использовать инструмент оболочки, не выходя изstart.spring.ioСоздайте новый проект, как показано в следующем примере:
# 项目名为 my-project
$ spring init --dependencies=web,data-jpa my-project
Using service at https://start.spring.io
Project extracted to '/Users/developer/example/my-project
В приведенном выше примере создаетсяmy-project
Проект Maven, используяspring-boot-starter-web
а такжеspring-boot-starter-data-jpa
. можно использовать--list
Флаги перечисляют возможности сервиса. следующим образом:
$ spring init --list
=======================================
Capabilities of https://start.spring.io
=======================================
Available dependencies:
-----------------------
actuator - Actuator: Production ready features to help you monitor and manage your application
...
web - Web: Support for full-stack web development, including Tomcat and spring-webmvc
websocket - Websocket: Support for WebSocket development
ws - WS: Support for Spring Web Services
Available project types:
------------------------
gradle-build - Gradle Config [format:build, build:gradle]
gradle-project - Gradle Project [format:project, build:gradle]
maven-build - Maven POM [format:build, build:maven]
maven-project - Maven Project [format:project, build:maven] (default)
init
Команда поддерживает множество операций, специфичных дляhelp
команда для просмотра. В следующем примере создается проект Gradle, использующий Java 8 и упакованный в файл war.
$ spring init --build=gradle --java-version=1.8 --dependencies=websocket --packaging=war sample-app.zip
Using service at https://start.spring.io
Content saved to 'sample-app.zip'
Используйте прорезную оболочку
SpringBoot включает полные сценарии командной строки для оболочек BASH и zsh. Если вам не нужно их использовать (используя систему Windows), вы можете использоватьshell
Команда запускает интегрированную оболочку следующим образом:
$ spring shell
Spring Boot (v2.2.0.RELEASE)
Hit TAB to complete. Type \'help' and hit RETURN for help, and \'exit' to quit.
Используя встроенную оболочку, другие команды можно использовать напрямую:
$ version
Spring CLI v2.2.0.RELEASE
Встроенная оболочка поддерживает цветной вывод ANSI иtab
намекать. Если вам нужно запустить собственные команды, вы можете использовать!
префикс, для выхода из встроенной оболочки используйтеctrl-c
.
добавить расширение
использоватьinstall
Команда для добавления расширений. Допустимые форматы расширения:group:artifact:version
,следующим образом:
$ spring install com.example:spring-boot-cli-extension:1.0.0.RELEASE
Помимо установки необходимых вам целевых зависимостей, также будут установлены все его зависимости.
использоватьuninstall
Команда для удаления зависимостей. Как использовать иinstall
Такой же. Он удаляет целевые зависимости и все зависимости цели. Чтобы удалить все зависимости расширения, используйте:
$ spring uninstall --all
Разработка приложений с помощью Groovy Beans DSL
Spring framework 4.0 имеет встроенную поддержку DSL. Определения компонентов можно использовать в том же формате в приложении Grooby.
Настройте интерфейс командной строки с помощью settings.xml
Интерфейс командной строки Spring Boot использует Aether (механизм разрешения зависимостей Maven) для разрешения зависимостей. CLI использует конфигурацию maven в ~/.m2/settings.xml для настройки Aether. Интерфейс командной строки следует следующей конфигурации:
- Offline
- Mirrors
- Servers
- Proxies
- Profiles
- Activation
- Repositories
- Active profiles
Справочная документация
Официальная документация SpringBootОбщедоступный номер: Yifeixi (сосредоточьтесь на знании домена Javaглубокое обучение, от исходного кода до принципа, систематического и упорядоченного обучения)