Spring Boot CLI - Guia rápido
O Spring Boot CLI é uma interface de linha de comando para Spring Boot. Ele pode ser usado para um início rápido com o Spring. Ele pode executar scripts Groovy, o que significa que um desenvolvedor não precisa escrever código clichê; tudo o que é necessário é o foco na lógica de negócios. Spring Boot CLI é a maneira mais rápida de criar um aplicativo baseado em Spring.
Características
Nesta seção, veremos os diferentes recursos do Spring Boot CL -
Ele fornece uma interface para executar e testar o aplicativo Spring Boot no prompt de comando.
Ele usa internamente os componentes Spring Boot Starter e Spring Boot AutoConfigurate para resolver todas as dependências e executar o aplicativo.
Ele contém o compilador Groovy e o Grape Dependency Manager.
Suporta Groovy Scripts sem instalação externa de Groovy.
Ele adiciona padrões do Spring Boot e resolve todas as dependências automaticamente.
Spring é uma estrutura baseada em Java; portanto, precisamos configurar o JDK primeiro. A seguir estão as etapas necessárias para configurar o Spring Boot CLI junto com a instalação do JDK.
Etapa 1 - Configure o Java Development Kit (JDK)
Você pode baixar a versão mais recente do SDK no site Java da Oracle - Java SE Downloads. Você encontrará instruções para instalar o JDK nos arquivos baixados, siga as instruções fornecidas para instalar e configurar a configuração. Por fim, defina as variáveis de ambiente PATH e JAVA_HOME para se referir ao diretório que contém java e javac, normalmentejava_install_dir/bin e java_install_dir respectivamente.
Se você estiver executando o Windows e tiver instalado o JDK em C:\jdk1.6.0_15, você teria que colocar a seguinte linha em seu C:\autoexec.bat arquivo -
set PATH=C:\jdk1.6.0_15\bin;%PATH%
set JAVA_HOME=C:\jdk1.6.0_15
Alternativamente, em Windows NT/2000/XP, você terá que clicar com o botão direito em Meu computador, selecionar Propriedades → Avançado → Variáveis de ambiente. Então, você terá que atualizar o valor de PATH e clicar no botão OK.
No Unix (Solaris, Linux, etc.), se o SDK estiver instalado em /usr/local/jdk1.6.0_15 e você usa o C shell, você terá que colocar o seguinte em seu .cshrc arquivo -
setenv PATH /usr/local/jdk1.6.0_15/bin:$PATH
setenv JAVA_HOME /usr/local/jdk1.6.0_15
Etapa 2 - Instalar Spring Boot CLI
Você pode baixar a versão mais recente da API Spring Boot CLI como arquivo ZIP em https://repo.spring.io/release/org/springframework/boot/spring-boot-cli/. Depois de baixar a instalação, descompacte a distribuição zip em um local conveniente. Por exemplo, emE:\Test\spring-1.5.8.RELEASE on Windows, ou /usr/local/spring-1.5.8.RELEASE on Linux/Unix.
Certifique-se de definir sua variável CLASSPATH neste diretório corretamente, caso contrário, você enfrentará um problema ao executar seu aplicativo.
Ou defina o caminho no prompt de comando temporariamente para executar o aplicativo Spring Boot conforme mostrado abaixo -
E:/Test/> set path=E:\Test\spring-1.5.8.RELEASE\bin;%PATH%
Etapa 3 - Verificar a instalação
Execute o seguinte comando no prompt de comando para verificar a instalação -
E:/Test/> spring --version
Ele deve imprimir a seguinte saída, confirmando a instalação bem-sucedida -
Spring CLI v1.5.8.RELEASE
Neste exemplo, criaremos um aplicativo da Web baseado em Spring Boot + MVC + Rest.
Etapa 1: Criar pasta de origem
Crie uma pasta FirstApplication em E:\Test folder.
Etapa 2: Criar arquivo de origem
Crie o arquivo FirstApplication.groovy em E:\Test folder com o seguinte código-fonte -
@RestController
class FirstApplication {
@RequestMapping("/")
String welcome() {
"Welcome to TutorialsPoint.Com"
}
}
Etapa 3: execute o aplicativo
Digite o seguinte comando -
E:/Test/> spring run FirstApplication.groovy
Agora, o Spring Boot CLI entrará em ação, baixará as dependências necessárias, executará o tomcat integrado, implantará o aplicativo e o iniciará. Você pode ver a seguinte saída no console -
Resolving dependencies..........................................................
................................................................................
........................
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _> | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.8.RELEASE)
2017-11-07 17:36:55.703 INFO 5528 --- [ runner-0] o.s.boot.SpringApplication:
Starting application on ...
2017-11-07 17:36:55.707 INFO 5528 --- [ runner-0] o.s.boot.SpringApplication:
No active profile set, falling back to default profiles: default
2017-11-07 17:36:56.067 INFO 5528 --- [ runner-0] ationConfigEmbeddedWebApplicationContext : Refreshing org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@4c108392: startup date [Tue Nov 07 17:36:
56 IST 2017]; root of context hierarchy
2017-11-07 17:36:57.327 INFO 5528 --- [ runner-0] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat initialized with port(s): 8080 (http)
2017-11-07 17:36:57.346 INFO 5528 --- [ runner-0] o.apache.catalina.core.StandardService : Starting service [Tomcat]
2017-11-07 17:36:57.354 INFO 5528 --- [ runner-0] org.apache.catalina.core.StandardEngine : Starting Servlet Engine: Apache Tomcat/8.5.23
2017-11-07 17:36:57.537 INFO 5528 --- [ost-startStop-1] org.apache.catalina.loader.WebappLoader : Unknown loader org.springframework.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader@41bfad4f class org.springframew
ork.boot.cli.compiler.ExtendedGroovyClassLoader$DefaultScopeParentClassLoader
2017-11-07 17:36:57.567 INFO 5528 --- [ost-startStop-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring embedded WebApplicationContext
2017-11-07 17:36:57.567 INFO 5528 --- [ost-startStop-1] o.s.web.context.ContextLoader : Root WebApplicationContext: initialization completed in 1500 ms
2017-11-07 17:36:57.725 INFO 5528 --- [ost-startStop-1] o.s.b.w.servlet.ServletRegistrationBean : Mapping servlet: 'dispatcherServlet' to [/]
2017-11-07 17:36:57.730 INFO 5528 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'characterEncodingFilter' to: [/*]
2017-11-07 17:36:57.730 INFO 5528 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'hiddenHttpMethodFilter' to: [/*]
2017-11-07 17:36:57.730 INFO 5528 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'httpPutFormContentFilter' to: [/*]
2017-11-07 17:36:57.730 INFO 5528 --- [ost-startStop-1] o.s.b.w.servlet.FilterRegistrationBean : Mapping filter: 'requestContextFilter' to: [/*]
2017-11-07 17:36:58.012 INFO 5528 --- [ runner-0] s.w.s.m.m.a.RequestMappingHandlerAdapter : Looking for @ControllerAdvice: org.springframework.boot.context.embedded.AnnotationConfigEmbeddedWebApplicationContext@4c108392: startup date [Tue Nov 07 17:36:56 IST 2017]; root of context hierarchy
2017-11-07 17:36:58.066 INFO 5528 --- [ runner-0] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/]}" onto public java.lang.String FirstApplication.home()
2017-11-07 17:36:58.070 INFO 5528 --- [ runner-0] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error]}" onto public org.springframework.http.ResponseEntity
> org.springframework.boot.autoconfigure.web.BasicErrorController.error(javax.servlet.http.HttpServletRequest) 2017-11-07 17:36:58.071 INFO 5528 --- [ runner-0] s.w.s.m.m.a.RequestMappingHandlerMapping : Mapped "{[/error],produces=[text/html]}" onto public org.springframework.web.servlet.ModelAndView org.springframework.boot.autoconfigure.web .BasicErrorController.errorHtml(javax.servlet.http.HttpServletRequest,javax.servlet.http.HttpServletResponse) 2017-11-07 17:36:58.096 INFO 5528 --- [ runner-0] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/webjars/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 2017-11-07 17:36:58.096 INFO 5528 --- [ runner-0] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 2017-11-07 17:36:58.129 INFO 5528 --- [ runner-0] o.s.w.s.handler.SimpleUrlHandlerMapping : Mapped URL path [/**/favicon.ico] onto handler of type [class org.springframework.web.servlet.resource.ResourceHttpRequestHandler] 2017-11-07 17:36:58.626 INFO 5528 --- [ runner-0] o.s.j.e.a.AnnotationMBeanExporter : Registering beans for JMX exposure on startup 2017-11-07 17:36:58.696 INFO 5528 --- [ runner-0] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http) 2017-11-07 17:36:58.699 INFO 5528 --- [ runner-0] o.s.boot.SpringApplication : Started application in 3.529 seconds (JVM running for 190.196) 2017-11-07 17:37:20.217 INFO 5528 --- [nio-8080-exec-1] o.a.c.c.C.[Tomcat].[localhost].[/] : Initializing Spring FrameworkServlet 'dispatcherServlet' 2017-11-07 17:37:20.218 INFO 5528 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization started 2017-11-07 17:37:20.238 INFO 5528 --- [nio-8080-exec-1] o.s.web.servlet.DispatcherServlet : FrameworkServlet 'dispatcherServlet': initialization completed in 20 ms
Etapa 4: navegue pelo aplicativo no navegador
Nosso aplicativo de descanso com base na mola está pronto. Abrir url como "http://localhost:8080/"e você verá a seguinte saída -
Hello World
Pontos importantes
Considere os seguintes pontos para entender como o Spring CLI funciona.
Todos os JARs de dependência são baixados apenas pela primeira vez.
O Spring CLI detecta automaticamente quais JARs de dependência devem ser baixados com base nas classes e anotações usadas no código.
Finalmente, após a compilação do código, implante o arquivo war em um tomcat integrado e inicie o servidor tomcat integrado na porta padrão 8080.
A base de código Groovy padrão contém um @Grabanotação para que as dependências de bibliotecas de terceiros possam ser declaradas. Usando a anotação @Grab, o Grape Dependency Manager baixa o jar de maneira semelhante ao Maven / Gradle sem nenhuma ferramenta de construção. Spring Boot tenta deduzir as bibliotecas necessárias com base no código. Por exemplo, o uso de @RestController informa que as bibliotecas "Tomcat" e "Spring MVC" devem ser capturadas.
Pegar dicas
A tabela a seguir detalha as dicas que Spring Boot usa para baixar bibliotecas de terceiros -
Sr. Não. | Dica e dependência para download / link |
---|---|
1 | JdbcTemplate, NamedParameterJdbcTemplate, DataSource Aplicativo JDBC |
2 | @EnableJms Aplicativo JMS |
3 | @EnableCaching Abstração de cache |
4 | @Test JUnit |
5 | @EnableRabbit RabbitMQ |
6 | @EnableReactor Projeto Reator |
7 | extends Specification Teste de Spock |
8 | @EnableBatchProcessing Spring Batch |
9 | @MessageEndpoint, @EnableIntegrationPatterns Integração Primavera |
10 | @EnableDeviceResolver Spring Mobile |
11 | @Controller, @RestController, @EnableWebMvc Spring MVC + Tomcat incorporado |
12 | @EnableWebSecurity Spring Security |
13 | @EnableTransactionManagement Gerenciamento de transações de primavera |
Podemos especificar uma dependência usando a anotação @Grab mesmo sem especificar o grupo ou a versão. Por exemplo,
@Grab('antlr')
Agora o Spring Boot CLI baixará a versão 2.7.7 do antlrcomo está presente nos metadados de dependência padrão do Spring Boot para a versão 1.5.8. O Spring Boot mantém todas as versões de dependência por padrão que são fornecidas em seu CLI, gerenciamento de dependência Maven e plugin Gradle. Sempre que declararmos uma dependência de qualquer um dos artefatos presentes nos metadados de dependência de efault sem declarar uma versão, a versão listada em sua tabela será usada.
A tabela a seguir mostra todas as dependências e suas versões incluídas nos metadados padrão para a versão Spring Boot CLI 1.5.8.
Id do Grupo | Id do artefato | Versão |
---|---|---|
antlr | antlr | 2.7.7 |
ch.qos.logback | logback-access | 1.1.11 |
ch.qos.logback | logback-clássico | 1.1.11 |
ch.qos.logback | logback-core | 1.1.11 |
com.atomikos | transações-jdbc | 3.9.3 |
com.atomikos | transações-jms | 3.9.3 |
com.atomikos | transações-jta | 3.9.3 |
com.couchbase.client | couchbase-spring-cache | 2.1.0 |
com.couchbase.client | cliente-java | 2.3.7 |
com.datastax.cassandra | cassandra-driver-core | 3.1.4 |
com.datastax.cassandra | mapeamento de driver de cassandra | 3.1.4 |
com.fasterxml | colega de classe | 1.3.4 |
com.fasterxml.jackson.core | jackson-annotations | 2.8.0 |
com.fasterxml.jackson.core | jackson-core | 2.8.10 |
com.fasterxml.jackson.core | jackson-databind | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-avro | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-cbor | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-csv | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-ion | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-properties | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-protobuf | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-smile | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-xml | 2.8.10 |
com.fasterxml.jackson.dataformat | jackson-dataformat-yaml | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-goiaba | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-hibernate3 | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-hibernate4 | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-hibernate5 | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-hppc | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-jaxrs | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-jdk8 | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-joda | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-json-org | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-jsr310 | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-jsr353 | 2.8.10 |
com.fasterxml.jackson.datatype | jackson-datatype-pcollections | 2.8.10 |
com.fasterxml.jackson.jaxrs | jackson-jaxrs-base | 2.8.10 |
com.fasterxml.jackson.jaxrs | jackson-jaxrs-cbor-provider | 2.8.10 |
com.fasterxml.jackson.jaxrs | jackson-jaxrs-json-provider | 2.8.10 |
com.fasterxml.jackson.jaxrs | jackson-jaxrs-smile-provider | 2.8.10 |
com.fasterxml.jackson.jaxrs | jackson-jaxrs-xml-provider | 2.8.10 |
com.fasterxml.jackson.jaxrs | jackson-jaxrs-yaml-provider | 2.8.10 |
com.fasterxml.jackson.jr | jackson-jr-all | 2.8.10 |
com.fasterxml.jackson.jr | jackson-jr-objects | 2.8.10 |
com.fasterxml.jackson.jr | jackson-jr-retrofit2 | 2.8.10 |
com.fasterxml.jackson.jr | jackson-jr-stree | 2.8.10 |
com.fasterxml.jackson.module | pós-combustor de módulo jackson | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-guice | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-jaxb-annotations | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-jsonSchema | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-kotlin | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-mrbean | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-osgi | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-parameter-names | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-paranamer | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-scala_2.10 | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-scala_2.11 | 2.8.10 |
com.fasterxml.jackson.module | jackson-module-scala_2.12 | 2.8.10 |
com.gemstone.gemfire | gemfire | 8.2.7 |
com.github.ben-manes.caffeine | cafeína | 2.3.5 |
com.github.mxab.thymeleaf.extras | thymeleaf-extras-data-attribute | 1,3 |
com.google.appengine | appengine-api-1.0-sdk | 1.9.58 |
com.google.code.gson | gson | 2.8.2 |
com.googlecode.json-simple | json-simple | 1.1.1 |
com.h2database | H2 | 1.4.196 |
com.hazelcast | avelã | 3.7.8 |
com.hazelcast | Hazelcast-client | 3.7.8 |
com.hazelcast | Hazelcast-hibernate4 | 3.7.1 |
com.hazelcast | Hazelcast-hibernate5 | 1.1.3 |
com.hazelcast | Hazelcast-Spring | 3.7.8 |
com.jayway.jsonpath | json-path | 2.2.0 |
com.jayway.jsonpath | json-path-assert | 2.2.0 |
com.microsoft.sqlserver | mssql-jdbc | 6.1.0.jre7 |
com.querydsl | querydsl-apt | 4.1.4 |
com.querydsl | querydsl-Collections | 4.1.4 |
com.querydsl | querydsl-core | 4.1.4 |
com.querydsl | querydsl-jpa | 4.1.4 |
com.querydsl | querydsl-mongodb | 4.1.4 |
com.samskivert | Justache | 1,13 |
com.sendgrid | sendgrid-java | 2.2.2 |
com.sun.mail | javax.mail | 1.5.6 |
com.timgroup | java-statsd-client | 3.1.0 |
com.unboundid | unboundid-ldapsdk | 3.2.1 |
com.zaxxer | HikariCP | 2.5.1 |
com.zaxxer | HikariCP-java6 | 2.3.13 |
com.zaxxer | HikariCP-java7 | 2.4.13 |
commons-beanutils | commons-beanutils | 1.9.3 |
commons-codec | commons-codec | 1,10 |
coleções comuns | coleções comuns | 3.2.2 |
commons-dbcp | commons-dbcp | 1,4 |
digestor comum | digestor comum | 2,1 |
piscina comum | commons-pool | 1.6 |
de.flapdoodle.embed | de.flapdoodle.embed.mongo | 1.50.5 |
dom4j | dom4j | 1.6.1 |
io.dropwizard.metrics | metrics-annotation | 3.1.5 |
io.dropwizard.metrics | metrics-core | 3.1.5 |
io.dropwizard.metrics | metrics-ehcache | 3.1.5 |
io.dropwizard.metrics | metrics-ganglia | 3.1.5 |
io.dropwizard.metrics | metrics-graphite | 3.1.5 |
io.dropwizard.metrics | metrics-healthchecks | 3.1.5 |
io.dropwizard.metrics | metrics-httpasyncclient | 3.1.5 |
io.dropwizard.metrics | metrics-jdbi | 3.1.5 |
io.dropwizard.metrics | metrics-jersey | 3.1.5 |
io.dropwizard.metrics | metrics-jersey2 | 3.1.5 |
io.dropwizard.metrics | metrics-jetty8 | 3.1.5 |
io.dropwizard.metrics | metrics-jetty9 | 3.1.5 |
io.dropwizard.metrics | metrics-jetty9-legacy | 3.1.5 |
io.dropwizard.metrics | metrics-json | 3.1.5 |
io.dropwizard.metrics | metrics-jvm | 3.1.5 |
io.dropwizard.metrics | metrics-log4j | 3.1.5 |
io.dropwizard.metrics | metrics-log4j2 | 3.1.5 |
io.dropwizard.metrics | metrics-logback | 3.1.5 |
io.dropwizard.metrics | metrics-servlet | 3.1.5 |
io.dropwizard.metrics | metrics-servlets | 3.1.5 |
io.projectreactor | reactor-bus | 2.0.8.RELEASE |
io.projectreactor | reactor-core | 2.0.8.RELEASE |
io.projectreactor | reactor-groovy | 2.0.8.RELEASE |
io.projectreactor | reactor-groovy-extensions | 2.0.8.RELEASE |
io.projectreactor | reactor-logback | 2.0.8.RELEASE |
io.projectreactor | reactor-net | 2.0.8.RELEASE |
io.projectreactor | reactor-stream | 2.0.8.RELEASE |
io.projectreactor.spring | reactor-spring-context | 2.0.7.RELEASE |
io.projectreactor.spring | reactor-spring-core | 2.0.7.RELEASE |
io.projectreactor.spring | reactor-spring-messaging | 2.0.7.RELEASE |
io.projectreactor.spring | reactor-spring-webmvc | 2.0.7.RELEASE |
io.searchbox | jest | 2.0.4 |
io.undertow | undertow-core | 1.4.20.Final |
io.undertow | undertow-servlet | 1.4.20.Final |
io.undertow | undertow-websockets-jsr | 1.4.20.Final |
javax.cache | cache-api | 1.0.0 |
javax.jms | jms-api | 1.1-rev-1 |
javax.mail | javax.mail-api | 1.5.6 |
javax.servlet | javax.servlet-api | 3.1.0 |
javax.servlet | jstl | 1.2 |
javax.transaction | javax.transaction-api | 1.2 |
javax.validation | validation-api | 1.1.0.Final |
jaxen | jaxen | 1.1.6 |
joda-time | joda-time | 2.9.9 |
junit | junit | 4.12 |
mysql | mysql-connector-java | 5.1.44 |
net.java.dev.jna | jna | 4.2.2 |
net.java.dev.jna | jna-platform | 4.2.2 |
net.sf.ehcache | ehcache | 2.10.4 |
net.sourceforge.htmlunit | htmlunit | 2.21 |
net.sourceforge.jtds | jtds | 1.3.1 |
net.sourceforge.nekohtml | nekohtml | 1.9.22 |
nz.net.ultraq.thymeleaf | thymeleaf-layout-dialect | 1.4.0 |
org.apache.activemq | activemq-amqp | 5.14.5 |
org.apache.activemq | activemq-blueprint | 5.14.5 |
org.apache.activemq | activemq-broker | 5.14.5 |
org.apache.activemq | activemq-camel | 5.14.5 |
org.apache.activemq | activemq-client | 5.14.5 |
org.apache.activemq | activemq-console | 5.14.5 |
org.apache.activemq | activemq-http | 5.14.5 |
org.apache.activemq | activemq-jaas | 5.14.5 |
org.apache.activemq | activemq-jdbc-store | 5.14.5 |
org.apache.activemq | activemq-jms-pool | 5.14.5 |
org.apache.activemq | activemq-kahadb-store | 5.14.5 |
org.apache.activemq | activemq-karaf | 5.14.5 |
org.apache.activemq | activemq-leveldb-store | 5.14.5 |
org.apache.activemq | activemq-log4j-appender | 5.14.5 |
org.apache.activemq | activemq-mqtt | 5.14.5 |
org.apache.activemq | activemq-openwire-generator | 5.14.5 |
org.apache.activemq | activemq-openwire-legacy | 5.14.5 |
org.apache.activemq | activemq-osgi | 5.14.5 |
org.apache.activemq | activemq-partition | 5.14.5 |
org.apache.activemq | activemq-pool | 5.14.5 |
org.apache.activemq | activemq-ra | 5.14.5 |
org.apache.activemq | activemq-run | 5.14.5 |
org.apache.activemq | activemq-runtime-config | 5.14.5 |
org.apache.activemq | activemq-shiro | 5.14.5 |
org.apache.activemq | activemq-spring | 5.14.5 |
org.apache.activemq | activemq-stomp | 5.14.5 |
org.apache.activemq | activemq-web | 5.14.5 |
org.apache.activemq | artemis-amqp-protocol | 1.5.5 |
org.apache.activemq | artemis-commons | 1.5.5 |
org.apache.activemq | artemis-core-client | 1.5.5 |
org.apache.activemq | artemis-jms-client | 1.5.5 |
org.apache.activemq | artemis-jms-server | 1.5.5 |
org.apache.activemq | artemis-journal | 1.5.5 |
org.apache.activemq | artemis-native | 1.5.5 |
org.apache.activemq | artemis-selector | 1.5.5 |
org.apache.activemq | artemis-server | 1.5.5 |
org.apache.activemq | artemis-service-extensions | 1.5.5 |
org.apache.commons | commons-dbcp2 | 2.1.1 |
org.apache.commons | commons-pool2 | 2.4.2 |
org.apache.derby | derby | 10.13.1.1 |
org.apache.httpcomponents | httpasyncclient | 4.1.3 |
org.apache.httpcomponents | httpclient | 4.5.3 |
org.apache.httpcomponents | httpcore | 4.4.8 |
org.apache.httpcomponents | httpmime | 4.5.3 |
org.apache.logging.log4j | log4j-1.2-api | 2.7 |
org.apache.logging.log4j | log4j-api | 2.7 |
org.apache.logging.log4j | log4j-api-scala_2.10 | 2.7 |
org.apache.logging.log4j | log4j-api-scala_2.11 | 2.7 |
org.apache.logging.log4j | log4j-core | 2.7 |
org.apache.logging.log4j | log4j-flume-ng | 2.7 |
org.apache.logging.log4j | log4j-iostreams | 2.7 |
org.apache.logging.log4j | log4j-jcl | 2.7 |
org.apache.logging.log4j | log4j-jmx-gui | 2.7 |
org.apache.logging.log4j | log4j-jul | 2.7 |
org.apache.logging.log4j | log4j-liquibase | 2.7 |
org.apache.logging.log4j | log4j-nosql | 2.7 |
org.apache.logging.log4j | log4j-slf4j-impl | 2.7 |
org.apache.logging.log4j | log4j-taglib | 2.7 |
org.apache.logging.log4j | log4j-web | 2.7 |
org.apache.solr | solr-analysis-extras | 5.5.4 |
org.apache.solr | solr-analytics | 5.5.4 |
org.apache.solr | solr-cell | 5.5.4 |
org.apache.solr | solr-clustering | 5.5.4 |
org.apache.solr | solr-core | 5.5.4 |
org.apache.solr | solr-dataimporthandler | 5.5.4 |
org.apache.solr | solr-dataimporthandler-extras | 5.5.4 |
org.apache.solr | solr-langid | 5.5.4 |
org.apache.solr | solr-map-reduce | 5.5.4 |
org.apache.solr | solr-morphlines-cell | 5.5.4 |
org.apache.solr | solr-morphlines-core | 5.5.4 |
org.apache.solr | solr-solrj | 5.5.4 |
org.apache.solr | solr-test-framework | 5.5.4 |
org.apache.solr | solr-uima | 5.5.4 |
org.apache.solr | solr-velocity | 5.5.4 |
org.apache.tomcat | tomcat-annotations-api | 8.5.23 |
org.apache.tomcat | tomcat-jdbc | 8.5.23 |
org.apache.tomcat | tomcat-jsp-api | 8.5.23 |
org.apache.tomcat.embed | tomcat-embed-core | 8.5.23 |
org.apache.tomcat.embed | tomcat-embed-el | 8.5.23 |
org.apache.tomcat.embed | tomcat-embed-jasper | 8.5.23 |
org.apache.tomcat.embed | tomcat-embed-websocket | 8.5.23 |
org.aspectj | aspectjrt | 1.8.11 |
org.aspectj | aspectjtools | 1.8.11 |
org.aspectj | aspectjweaver | 1.8.11 |
org.assertj | assertj-core | 2.6.0 |
org.codehaus.btm | btm | 2.1.4 |
org.codehaus.groovy | groovy | 2.4.12 |
org.codehaus.groovy | groovy-all | 2.4.12 |
org.codehaus.groovy | groovy-ant | 2.4.12 |
org.codehaus.groovy | groovy-bsf | 2.4.12 |
org.codehaus.groovy | groovy-console | 2.4.12 |
org.codehaus.groovy | groovy-docgenerator | 2.4.12 |
org.codehaus.groovy | groovy-groovydoc | 2.4.12 |
org.codehaus.groovy | groovy-groovysh | 2.4.12 |
org.codehaus.groovy | groovy-jmx | 2.4.12 |
org.codehaus.groovy | groovy-json | 2.4.12 |
org.codehaus.groovy | groovy-jsr223 | 2.4.12 |
org.codehaus.groovy | groovy-nio | 2.4.12 |
org.codehaus.groovy | groovy-servlet | 2.4.12 |
org.codehaus.groovy | groovy-sql | 2.4.12 |
org.codehaus.groovy | groovy-swing | 2.4.12 |
org.codehaus.groovy | groovy-templates | 2.4.12 |
org.codehaus.groovy | groovy-test | 2.4.12 |
org.codehaus.groovy | groovy-testng | 2.4.12 |
org.codehaus.groovy | groovy-xml | 2.4.12 |
org.codehaus.janino | janino | 2.7.8 |
org.crashub | crash.cli | 1.3.2 |
org.crashub | crash.connectors.ssh | 1.3.2 |
org.crashub | crash.connectors.telnet | 1.3.2 |
org.crashub | crash.embed.spring | 1.3.2 |
org.crashub | crash.plugins.cron | 1.3.2 |
org.crashub | crash.plugins.mail | 1.3.2 |
org.crashub | crash.shell | 1.3.2 |
org.eclipse.jetty | apache-jsp | 9.4.7.v20170914 |
org.eclipse.jetty | apache-jstl | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-alpn-client | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-alpn-java-client | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-alpn-java-server | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-alpn-server | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-annotations | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-ant | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-client | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-continuation | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-deploy | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-hazelcast | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-http | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-http-spi | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-infinispan | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-io | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-jaas | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-jaspi | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-jmx | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-jndi | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-nosql | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-plus | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-proxy | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-quickstart | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-rewrite | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-runner | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-security | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-server | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-servlet | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-servlets | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-spring | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-start | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-unixsocket | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-util | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-util-ajax | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-webapp | 9.4.7.v20170914 |
org.eclipse.jetty | jetty-xml | 9.4.7.v20170914 |
org.eclipse.jetty.cdi | cdi-core | 9.4.7.v20170914 |
org.eclipse.jetty.cdi | cdi-servlet | 9.4.7.v20170914 |
org.eclipse.jetty.fcgi | fcgi-client | 9.4.7.v20170914 |
org.eclipse.jetty.fcgi | fcgi-server | 9.4.7.v20170914 |
org.eclipse.jetty.gcloud | jetty-gcloud-session-manager | 9.4.7.v20170914 |
org.eclipse.jetty.http2 | http2-client | 9.4.7.v20170914 |
org.eclipse.jetty.http2 | http2-common | 9.4.7.v20170914 |
org.eclipse.jetty.http2 | http2-hpack | 9.4.7.v20170914 |
org.eclipse.jetty.http2 | http2-http-client-transport | 9.4.7.v20170914 |
org.eclipse.jetty.http2 | http2-server | 9.4.7.v20170914 |
org.eclipse.jetty.memcached | jetty-memcached-sessions | 9.4.7.v20170914 |
org.eclipse.jetty.orbit | javax.servlet.jsp | 2.2.0.v201112011158 |
org.eclipse.jetty.osgi | jetty-httpservice | 9.4.7.v20170914 |
org.eclipse.jetty.osgi | jetty-osgi-boot | 9.4.7.v20170914 |
org.eclipse.jetty.osgi | jetty-osgi-boot-jsp | 9.4.7.v20170914 |
org.eclipse.jetty.osgi | jetty-osgi-boot-warurl | 9.4.7.v20170914 |
org.eclipse.jetty.websocket | javax-websocket-client-impl | 9.4.7.v20170914 |
org.eclipse.jetty.websocket | javax-websocket-server-impl | 9.4.7.v20170914 |
org.eclipse.jetty.websocket | websocket-api | 9.4.7.v20170914 |
org.eclipse.jetty.websocket | websocket-client | 9.4.7.v20170914 |
org.eclipse.jetty.websocket | websocket-common | 9.4.7.v20170914 |
org.eclipse.jetty.websocket | websocket-server | 9.4.7.v20170914 |
org.eclipse.jetty.websocket | websocket-servlet | 9.4.7.v20170914 |
org.ehcache | ehcache | 3.2.3 |
org.ehcache | ehcache-clustered | 3.2.3 |
org.ehcache | ehcache-transactions | 3.2.3 |
org.elasticsearch | elasticsearch | 2.4.6 |
org.firebirdsql.jdbc | jaybird-jdk16 | 2.2.13 |
org.firebirdsql.jdbc | jaybird-jdk17 | 2.2.13 |
org.firebirdsql.jdbc | jaybird-jdk18 | 2.2.13 |
org.flywaydb | flyway-core | 3.2.1 |
org.freemarker | freemarker | 2.3.26-incubating |
org.glassfish | javax.el | 3.0.0 |
org.glassfish.jersey.bundles.repackaged | jersey-guava | 2.25.1 |
org.glassfish.jersey.containers | jersey-container-servlet | 2.25.1 |
org.glassfish.jersey.containers | jersey-container-servlet-core | 2.25.1 |
org.glassfish.jersey.core | jersey-client | 2.25.1 |
org.glassfish.jersey.core | jersey-common | 2.25.1 |
org.glassfish.jersey.core | jersey-server | 2.25.1 |
org.glassfish.jersey.ext | jersey-bean-validation | 2.25.1 |
org.glassfish.jersey.ext | jersey-entity-filtering | 2.25.1 |
org.glassfish.jersey.ext | jersey-spring3 | 2.25.1 |
org.glassfish.jersey.media | jersey-media-jaxb | 2.25.1 |
org.glassfish.jersey.media | jersey-media-json-jackson | 2.25.1 |
org.glassfish.jersey.media | jersey-media-multipart | 2.25.1 |
org.hamcrest | hamcrest-core | 1.3 |
org.hamcrest | hamcrest-library | 1.3 |
org.hibernate | hibernate-core | 5.0.12.Final |
org.hibernate | hibernate-ehcache | 5.0.12.Final |
org.hibernate | hibernate-entitymanager | 5.0.12.Final |
org.hibernate | hibernate-envers | 5.0.12.Final |
org.hibernate | hibernate-java8 | 5.0.12.Final |
org.hibernate | hibernate-jpamodelgen | 5.0.12.Final |
org.hibernate | hibernate-validator | 5.3.5.Final |
org.hibernate | hibernate-validator-annotation-processor | 5.3.5.Final |
org.hsqldb | hsqldb | 2.3.5 |
org.infinispan | infinispan-jcache | 8.2.8.Final |
org.infinispan | infinispan-spring4-common | 8.2.8.Final |
org.infinispan | infinispan-spring4-embedded | 8.2.8.Final |
org.javassist | javassist | 3.21.0-GA |
org.jboss | jboss-transaction-spi | 7.6.0.Final |
org.jboss.logging | jboss-logging | 3.3.1.Final |
org.jboss.narayana.jta | jdbc | 5.5.30.Final |
org.jboss.narayana.jta | jms | 5.5.30.Final |
org.jboss.narayana.jta | jta | 5.5.30.Final |
org.jboss.narayana.jts | narayana-jts-integration | 5.5.30.Final |
org.jdom | jdom2 | 2.0.6 |
org.jolokia | jolokia-core | 1.3.7 |
org.jooq | jooq | 3.9.6 |
org.jooq | jooq-codegen | 3.9.6 |
org.jooq | jooq-meta | 3.9.6 |
org.json | json | 20140107 |
org.liquibase | liquibase-core | 3.5.3 |
org.mariadb.jdbc | mariadb-java-client | 1.5.9 |
org.mockito | mockito-core | 1.10.19 |
org.mongodb | mongodb-driver | 3.4.3 |
org.mongodb | mongo-java-driver | 3.4.3 |
org.mortbay.jasper | apache-el | 8.0.33 |
org.neo4j | neo4j-ogm-api | 2.1.5 |
org.neo4j | neo4j-ogm-compiler | 2.1.5 |
org.neo4j | neo4j-ogm-core | 2.1.5 |
org.neo4j | neo4j-ogm-http-driver | 2.1.5 |
org.postgresql | postgresql | 9.4.1212.jre7 |
org.projectlombok | lombok | 1.16.18 |
org.seleniumhq.selenium | htmlunit-driver | 2.21 |
org.seleniumhq.selenium | selenium-api | 2.53.1 |
org.seleniumhq.selenium | selenium-chrome-driver | 2.53.1 |
org.seleniumhq.selenium | selenium-firefox-driver | 2.53.1 |
org.seleniumhq.selenium | selenium-ie-driver | 2.53.1 |
org.seleniumhq.selenium | selenium-java | 2.53.1 |
org.seleniumhq.selenium | selenium-remote-driver | 2.53.1 |
org.seleniumhq.selenium | selenium-safari-driver | 2.53.1 |
org.seleniumhq.selenium | selenium-support | 2.53.1 |
org.skyscreamer | jsonassert | 1.4.0 |
org.slf4j | jcl-over-slf4j | 1.7.25 |
org.slf4j | jul-to-slf4j | 1.7.25 |
org.slf4j | log4j-over-slf4j | 1.7.25 |
org.slf4j | slf4j-api | 1.7.25 |
org.slf4j | slf4j-ext | 1.7.25 |
org.slf4j | slf4j-jcl | 1.7.25 |
org.slf4j | slf4j-jdk14 | 1.7.25 |
org.slf4j | slf4j-log4j12 | 1.7.25 |
org.slf4j | slf4j-nop | 1.7.25 |
org.slf4j | slf4j-simple | 1.7.25 |
org.spockframework | spock-core | 1.0-groovy-2.4 |
org.spockframework | spock-spring | 1.0-groovy-2.4 |
org.springframework | spring-aop | 4.3.12.RELEASE |
org.springframework | spring-aspects | 4.3.12.RELEASE |
org.springframework | spring-beans | 4.3.12.RELEASE |
org.springframework | spring-context | 4.3.12.RELEASE |
org.springframework | spring-context-support | 4.3.12.RELEASE |
org.springframework | spring-core | 4.3.12.RELEASE |
org.springframework | spring-expression | 4.3.12.RELEASE |
org.springframework | spring-instrument | 4.3.12.RELEASE |
org.springframework | spring-instrument-tomcat | 4.3.12.RELEASE |
org.springframework | spring-jdbc | 4.3.12.RELEASE |
org.springframework | spring-jms | 4.3.12.RELEASE |
org.springframework | springloaded | 1.2.8.RELEASE |
org.springframework | spring-messaging | 4.3.12.RELEASE |
org.springframework | spring-orm | 4.3.12.RELEASE |
org.springframework | spring-oxm | 4.3.12.RELEASE |
org.springframework | spring-test | 4.3.12.RELEASE |
org.springframework | spring-tx | 4.3.12.RELEASE |
org.springframework | spring-web | 4.3.12.RELEASE |
org.springframework | spring-webmvc | 4.3.12.RELEASE |
org.springframework | spring-webmvc-portlet | 4.3.12.RELEASE |
org.springframework | spring-websocket | 4.3.12.RELEASE |
org.springframework.amqp | spring-amqp | 1.7.4.RELEASE |
org.springframework.amqp | spring-rabbit | 1.7.4.RELEASE |
org.springframework.batch | spring-batch-core | 3.0.8.RELEASE |
org.springframework.batch | spring-batch-infrastructure | 3.0.8.RELEASE |
org.springframework.batch | spring-batch-integration | 3.0.8.RELEASE |
org.springframework.batch | spring-batch-test | 3.0.8.RELEASE |
org.springframework.boot | spring-boot | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-actuator | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-actuator-docs | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-autoconfigure | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-autoconfigure-processor | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-configuration-metadata | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-configuration-processor | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-devtools | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-loader | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-loader-tools | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-activemq | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-actuator | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-amqp | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-aop | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-artemis | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-batch | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-cache | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-cloud-connectors | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-cassandra | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-couchbase | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-elasticsearch | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-gemfire | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-jpa | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-ldap | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-mongodb | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-neo4j | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-redis | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-rest | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-data-solr | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-freemarker | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-groovy-templates | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-hateoas | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-integration | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-jdbc | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-jersey | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-jetty | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-jooq | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-jta-atomikos | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-jta-bitronix | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-jta-narayana | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-log4j2 | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-logging | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-mail | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-mobile | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-mustache | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-remote-shell | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-security | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-social-facebook | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-social-linkedin | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-social-twitter | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-test | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-thymeleaf | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-tomcat | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-undertow | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-validation | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-web | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-web-services | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-starter-websocket | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-test | 1.5.8.RELEASE |
org.springframework.boot | spring-boot-test-autoconfigure | 1.5.8.RELEASE |
org.springframework.cloud | spring-cloud-cloudfoundry-connector | 1.2.4.RELEASE |
org.springframework.cloud | spring-cloud-core | 1.2.4.RELEASE |
org.springframework.cloud | spring-cloud-heroku-connector | 1.2.4.RELEASE |
org.springframework.cloud | spring-cloud-localconfig-connector | 1.2.4.RELEASE |
org.springframework.cloud | spring-cloud-spring-service-connector | 1.2.4.RELEASE |
org.springframework.data | spring-cql | 1.5.8.RELEASE |
org.springframework.data | spring-data-cassandra | 1.5.8.RELEASE |
org.springframework.data | spring-data-commons | 1.13.8.RELEASE |
org.springframework.data | spring-data-couchbase | 2.2.8.RELEASE |
org.springframework.data | spring-data-elasticsearch | 2.1.8.RELEASE |
org.springframework.data | spring-data-envers | 1.1.8.RELEASE |
org.springframework.data | spring-data-gemfire | 1.9.8.RELEASE |
org.springframework.data | spring-data-jpa | 1.11.8.RELEASE |
org.springframework.data | spring-data-keyvalue | 1.2.8.RELEASE |
org.springframework.data | spring-data-ldap | 1.0.8.RELEASE |
org.springframework.data | spring-data-mongodb | 1.10.8.RELEASE |
org.springframework.data | spring-data-mongodb-cross-store | 1.10.8.RELEASE |
org.springframework.data | spring-data-mongodb-log4j | 1.10.8.RELEASE |
org.springframework.data | spring-data-neo4j | 4.2.8.RELEASE |
org.springframework.data | spring-data-redis | 1.8.8.RELEASE |
org.springframework.data | spring-data-rest-core | 2.6.8.RELEASE |
org.springframework.data | spring-data-rest-hal-browser | 2.6.8.RELEASE |
org.springframework.data | spring-data-rest-webmvc | 2.6.8.RELEASE |
org.springframework.data | spring-data-solr | 2.1.8.RELEASE |
org.springframework.hateoas | spring-hateoas | 0.23.0.RELEASE |
org.springframework.integration | spring-integration-amqp | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-core | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-event | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-feed | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-file | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-ftp | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-gemfire | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-groovy | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-http | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-ip | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-java-dsl | 1.2.3.RELEASE |
org.springframework.integration | spring-integration-jdbc | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-jms | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-jmx | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-jpa | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-mail | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-mongodb | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-mqtt | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-redis | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-rmi | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-scripting | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-security | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-sftp | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-stomp | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-stream | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-syslog | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-test | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-twitter | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-websocket | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-ws | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-xml | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-xmpp | 4.3.12.RELEASE |
org.springframework.integration | spring-integration-zookeeper | 4.3.12.RELEASE |
org.springframework.kafka | spring-kafka | 1.1.7.RELEASE |
org.springframework.kafka | spring-kafka-test | 1.1.7.RELEASE |
org.springframework.ldap | spring-ldap-core | 2.3.2.RELEASE |
org.springframework.ldap | spring-ldap-core-tiger | 2.3.2.RELEASE |
org.springframework.ldap | spring-ldap-ldif-batch | 2.3.2.RELEASE |
org.springframework.ldap | spring-ldap-ldif-core | 2.3.2.RELEASE |
org.springframework.ldap | spring-ldap-odm | 2.3.2.RELEASE |
org.springframework.ldap | spring-ldap-test | 2.3.2.RELEASE |
org.springframework.mobile | spring-mobile-device | 1.1.5.RELEASE |
org.springframework.plugin | spring-plugin-core | 1.2.0.RELEASE |
org.springframework.plugin | spring-plugin-metadata | 1.2.0.RELEASE |
org.springframework.restdocs | spring-restdocs-core | 1.1.3.RELEASE |
org.springframework.restdocs | spring-restdocs-mockmvc | 1.1.3.RELEASE |
org.springframework.restdocs | spring-restdocs-restassured | 1.1.3.RELEASE |
org.springframework.retry | spring-retry | 1.2.1.RELEASE |
org.springframework.security | spring-security-acl | 4.2.3.RELEASE |
org.springframework.security | spring-security-aspects | 4.2.3.RELEASE |
org.springframework.security | spring-security-cas | 4.2.3.RELEASE |
org.springframework.security | spring-security-config | 4.2.3.RELEASE |
org.springframework.security | spring-security-core | 4.2.3.RELEASE |
org.springframework.security | spring-security-crypto | 4.2.3.RELEASE |
org.springframework.security | spring-security-data | 4.2.3.RELEASE |
org.springframework.security | spring-security-jwt | 1.0.8.RELEASE |
org.springframework.security | spring-security-ldap | 4.2.3.RELEASE |
org.springframework.security | spring-security-messaging | 4.2.3.RELEASE |
org.springframework.security | spring-security-openid | 4.2.3.RELEASE |
org.springframework.security | spring-security-remoting | 4.2.3.RELEASE |
org.springframework.security | spring-security-taglibs | 4.2.3.RELEASE |
org.springframework.security | spring-security-test | 4.2.3.RELEASE |
org.springframework.security | spring-security-web | 4.2.3.RELEASE |
org.springframework.security.oauth | spring-security-oauth | 2.0.14.RELEASE |
org.springframework.security.oauth | spring-security-oauth2 | 2.0.14.RELEASE |
org.springframework.session | spring-session | 1.3.1.RELEASE |
org.springframework.session | spring-session-data-gemfire | 1.3.1.RELEASE |
org.springframework.session | spring-session-data-mongo | 1.3.1.RELEASE |
org.springframework.session | spring-session-data-redis | 1.3.1.RELEASE |
org.springframework.session | spring-session-hazelcast | 1.3.1.RELEASE |
org.springframework.session | spring-session-jdbc | 1.3.1.RELEASE |
org.springframework.social | spring-social-config | 1.1.4.RELEASE |
org.springframework.social | spring-social-core | 1.1.4.RELEASE |
org.springframework.social | spring-social-facebook | 2.0.3.RELEASE |
org.springframework.social | spring-social-facebook-web | 2.0.3.RELEASE |
org.springframework.social | spring-social-linkedin | 1.0.2.RELEASE |
org.springframework.social | spring-social-security | 1.1.4.RELEASE |
org.springframework.social | spring-social-twitter | 1.1.2.RELEASE |
org.springframework.social | spring-social-web | 1.1.4.RELEASE |
org.springframework.ws | spring-ws-core | 2.4.0.RELEASE |
org.springframework.ws | spring-ws-security | 2.4.0.RELEASE |
org.springframework.ws | spring-ws-support | 2.4.0.RELEASE |
org.springframework.ws | spring-ws-test | 2.4.0.RELEASE |
org.thymeleaf | thymeleaf | 2.1.5.RELEASE |
org.thymeleaf | thymeleaf-spring4 | 2.1.5.RELEASE |
org.thymeleaf.extras | thymeleaf-extras-conditionalcomments | 2.1.2.RELEASE |
org.thymeleaf.extras | thymeleaf-extras-java8time | 2.1.0.RELEASE |
org.thymeleaf.extras | thymeleaf-extras-springsecurity4 | 2.1.3.RELEASE |
org.webjars | hal-browser | 9f96c74 |
org.webjars | webjars-locator | 0.32-1 |
org.xerial | sqlite-jdbc | 3.15.1 |
org.yaml | snakeyaml | 1.17 |
redis.clients | jedis | 2.9.0 |
wsdl4j | wsdl4j | 1.6.3 |
xml-apis | xml-apis | 1.4.01 |
Neste capítulo, aprenderemos sobre as instruções padrão no Spring Boot CLI. Para começar, aprenderemos sobre as importações padrão.
Importações padrão
O Spring CLI importa automaticamente muitas bibliotecas por padrão para que importações explícitas não sejam necessárias. Vamos agora considerar o seguinte script bacana para entender as importações padrão.
@RestController
class FirstApplication {
@RequestMapping("/")
String welcome() {
"Welcome to TutorialsPoint.Com"
}
}
Aqui, import para @RestController, anotações @RequestMapping já estão incluídas por padrão pelo Spring Boot. Não somos nem mesmo obrigados a usar nomes totalmente qualificados. Você pode verificar executando o aplicativo.
Digite o seguinte comando -
E:/Test/> spring run FirstApplication.groovy
O comando acima irá gerar a seguinte saída no console -
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _> | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.8.RELEASE)
...
2017-11-07 19:22:17.310 INFO 4824 --- [ runner-0] o.s.boot.SpringApplication
: Started application in 3.405 seconds (JVM running for 7.021)
Método Principal Automático
Não somos obrigados a criar o método principal padrão para o script groovy inicializar um aplicativo Spring. Ele é criado automaticamente para o aplicativo de inicialização de primavera.
Neste capítulo, aprenderemos como criar um projeto de amostra baseado no Thymeleaf para demonstrar os recursos do Spring CLI. Siga a etapa abaixo mencionada para criar um projeto de amostra -
Sr. Não | Etapa e descrição |
---|---|
1 | Crie uma pasta com um nome TestApplication com modelos de subpastas e estáticos . |
2 | Crie message.groovy na pasta TestApplication , message.html na pasta de modelos , index.html na pasta estática conforme explicado abaixo. |
3 | Compile e execute o aplicativo para verificar o resultado da lógica implementada. |
TestApplication / message.groovy
@Controller
@Grab('spring-boot-starter-thymeleaf')
class MessageController {
@RequestMapping("/message")
String getMessage(Model model) {
String message = "Welcome to TutorialsPoint.Com!";
model.addAttribute("message", message);
return "message";
}
}
TestApplication / templates / message.html
<!DOCTYPE HTML>
<html xmlns:th = "http://www.thymeleaf.org">
<head>
<title>Spring Boot CLI Example</title>
<meta http-equiv = "Content-Type" content = "text/html; charset = UTF-8" />
</head>
<body>
<p th:text = "'Message: ' + ${message}" />
</body>
</html>
TestApplication / static / index.html
<!DOCTYPE HTML>
<html>
<head>
<title>Spring Boot CLI Example</title>
<meta http-equiv = "Content-Type" content = "text/html; charset = UTF-8" />
</head>
<body>
<p>Go to <a href = "/msg">Message</a></p>
</body>
</html>
Execute o aplicativo
Para executar o aplicativo, digite o seguinte comando -
E:/Test/TestApplication/> spring run *.groovy
Agora, o Spring Boot CLI entrará em ação, baixará as dependências necessárias, executará o tomcat integrado, implantará o aplicativo e o iniciará. Você pode ver a seguinte saída no console -
Resolving dependencies.............................
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _> | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.8.RELEASE)
...
2017-11-08 16:27:28.300 INFO 8360 --- [ runner-0] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2017-11-08 16:27:28.305 INFO 8360 --- [ runner-0] o.s.boot.SpringApplication : Started application in 4.203 seconds (JVM running for 38.792)
Navegue pelo aplicativo no navegador
Nosso aplicativo de descanso com base na mola está pronto. Abrir url como "http://localhost:8080/"e você verá a seguinte saída -
Go to Message
Clique no link Mensagem e você verá a seguinte saída -
Message − Welcome to TutorialsPoint.Com!
Pontos importantes
Considere os seguintes pontos para entender as ações tomadas pelo Spring CLI -
A anotação @Grab ('spring-boot-starter-thymeleaf') direciona a CLI para baixar a versão spring-boot-starter-thymeleaf 1.5.8.RELEASE.
Spring CLI detecta automaticamente a versão usando seus metadados, já que não especificamos nenhum id de grupo ou id de versão aqui.
Finalmente, após a compilação do código, implante o war em um tomcat embutido, inicie o servidor tomcat embutido na porta padrão 8080.
Neste capítulo, testaremos o projeto de amostra criado no Capítulo de exemplo Hello World para demonstrar os recursos de teste do Spring CLI. Siga as etapas listadas na tabela abaixo para testar o projeto de amostra -
Sr. Não | Etapa e descrição |
---|---|
1 | Crie FirstApplication.groovy e TestFirstApplication.groovy na pasta Test, conforme explicado abaixo. |
2 | Compile e execute o aplicativo para verificar o resultado da lógica implementada. |
FirstApplication / FirstApplication.groovy
@RestController
class FirstApplication {
@RequestMapping("/")
String welcome() {
"Welcome to TutorialsPoint.Com"
}
}
FirstApplication / TestFirstApplication.groovy
class TestFirstApplication {
@Test
void welcomeTest() {
assertEquals("Welcome to TutorialsPoint.Com", new FirstApplication().welcome())
}
}
Execute o aplicativo
Para executar o aplicativo, digite o seguinte comando -
E:/Test/FirstApplication/> spring test FirstApplication.groovy TestFirstApplication.groovy
Agora o Spring Boot CLI entrará em ação, fará o download das dependências necessárias, compilará a fonte e o arquivo de teste e teste de unidade do código. A seguinte saída será gerada no console -
Resolving dependencies........................................................
.
Time: 0.457
OK (1 test)
Pontos importantes
Considere os seguintes pontos para entender as ações tomadas pelo Spring CLI -
A anotação @Test direciona a CLI para fazer download da versão 4.12 do JUnit.
O Spring CLI detecta automaticamente a versão usando seus metadados, pois não especificamos nenhuma dependência.
Finalmente, após a compilação do código, teste o aplicativo.
Spring boot CLI fornece o comando jar para empacotar um aplicativo como um arquivo jar. Vamos testar o projeto de amostra criado no Capítulo do projeto Starter Thymeleaf para demonstrar os recursos de empacotamento do Spring CLI.
Siga as etapas descritas abaixo para empacotar o projeto de amostra -
Empacote o aplicativo
Para empacotar o aplicativo, comece digitando o seguinte comando -
E:/Test/TestApplication/> spring jar TestApplication.jar *.groovy
Resultado
O comando imprimirá a seguinte saída -
E:/Test/TestApplication/> spring jar TestApplication.jar *.groovy
Resultado
Agora você pode ver dois novos arquivos criados na pasta TestApplication.
TestApplication.jar - Um arquivo jar executável.
TestApplication.jar.original - Arquivo jar original.
Incluir excluir
Por padrão, os seguintes diretórios são incluídos junto com seus conteúdos -
- public
- resources
- static
- templates
- META-INF
Por padrão, os seguintes diretórios são excluídos junto com seus conteúdos -
- repository
- build
- target
- arquivos * .jar
- arquivos * .groovy
Usando --include, podemos incluir diretórios excluídos de outra forma. Usando--exclude, podemos excluir diretórios incluídos de outra forma.
Executando o Jar executável
Para executar o Jar executável, digite o seguinte comando -
E:/Test/TestApplication/> java -jar TestApplication.jar
O comando acima irá gerar a seguinte saída no console -
. ____ _ __ _ _
/\\ / ___'_ __ _ _(_)_ __ __ _ \ \ \ \
( ( )\___ | '_ | '_| | '_ \/ _> | \ \ \ \
\\/ ___)| |_)| | | | | || (_| | ) ) ) )
' |____| .__|_| |_|_| |_\__, | / / / /
=========|_|==============|___/=/_/_/_/
:: Spring Boot :: (v1.5.8.RELEASE)
...
2017-11-08 16:27:28.300 INFO 8360 --- [ runner-0] s.b.c.e.t.TomcatEmbeddedServletContainer : Tomcat started on port(s): 8080 (http)
2017-11-08 16:27:28.305 INFO 8360 --- [ runner-0] o.s.boot.SpringApplication : Started application in 4.203 seconds (JVM running for 38.792)
Navegue pelo aplicativo no navegador
Nosso aplicativo de descanso baseado em mola agora está pronto. Abrir url como "http://localhost:8080/"e você verá a seguinte saída -
Go to Message
Clique no link Mensagem e você verá a seguinte saída -
Message: Welcome to TutorialsPoint.Com!
Spring Boot CLI pode ser usado para criar um novo projeto com maven como ferramenta de construção padrão usando o comando init. Maven vai usarhttps://start.spring.ioserviço. No exemplo a seguir, criaremos um aplicativo da web usando thymeleaf. Vamos paraE:\Test pasta e digite o seguinte comando -
E:/Test> spring init --dependencies = web,thymeleaf MavenApplication.zip
O comando acima irá gerar a seguinte saída -
Using service at https://start.spring.io
Content saved to MavenApplication.zip
Criar projeto Gradle
Podemos criar um projeto baseado em Gradle também definindo --buildcomo gradle. Para entender isso de uma maneira melhor, considere o exemplo abaixo. Vamos paraE:\Test pasta e digite o seguinte comando -
E:/Test> spring init --build = gradle --java-version = 1.8 --dependencies = web,thymeleaf --packaging = war GradleApplication.zip
O comando acima irá gerar a seguinte saída -
Using service at https://start.spring.io
Content saved to GradleApplication.zip
Spring Boot CLI fornece uma interface Shell para executar os comandos na qual podemos executar diretamente os comandos conforme mostrado abaixo. Vamos paraE:\Test pasta e digite o seguinte comando -
E:/Test> spring shell
O comando acima irá gerar a seguinte saída -
?[1mSpring Boot?[m?[2m (v1.5.8.RELEASE)?[m
Hit TAB to complete. Type 'help' and hit RETURN for help, and 'exit' to quit.
Executando comandos no Shell
Nesta seção, aprenderemos como executar comandos no Shell. Digite o seguinte e veja o resultado -
version
Spring CLI v1.5.8.RELEASE
Você pode pressionar tab para completar automaticamente os comandos e digitar exit para finalizar o console do shell.
Testando o aplicativo em shell
Vamos agora aprender como testar o aplicativo no shell. Digite a seguinte linha de código e veja o resultado -
E:\Test\FirstApplication>spring shell
?[1mSpring Boot?[m?[2m (v1.5.8.RELEASE)?[m
Hit TAB to complete. Type 'help' and hit RETURN for help, and 'exit' to quit.
$ test FirstApplication.groovy TestFirstApplication.groovy . Time: 0.347 OK (1 test) $ exit
E:\Test\FirstApplication>