mirror of
https://gitee.com/dcren/initializr.git
synced 2025-09-18 09:44:47 +08:00
Add service sample
Closes gh-844
This commit is contained in:
@@ -103,6 +103,9 @@ jobs:
|
||||
build_uri: "https://ci.spring.io/teams/${BUILD_TEAM_NAME}/pipelines/${BUILD_PIPELINE_NAME}/jobs/${BUILD_JOB_NAME}/builds/${BUILD_NAME}"
|
||||
build_number: "${BUILD_PIPELINE_NAME}-${BUILD_JOB_NAME}-${BUILD_NAME}"
|
||||
disable_checksum_uploads: true
|
||||
exclude:
|
||||
- "**/*.effective-pom"
|
||||
- "**/initializr-service-sample/**"
|
||||
on_failure:
|
||||
do:
|
||||
- put: repo-status-build
|
||||
|
50
initializr-service-sample/README.adoc
Normal file
50
initializr-service-sample/README.adoc
Normal file
@@ -0,0 +1,50 @@
|
||||
= Service sample
|
||||
|
||||
:docs: http://docs.spring.io/initializr/docs/current-SNAPSHOT/reference/html
|
||||
|
||||
This sample demonstrates how you can create your own service easily as described in the
|
||||
{docs}/#create-instance[reference documentation].
|
||||
|
||||
== Running the service
|
||||
You can start the service from the command line:
|
||||
|
||||
[indent=0]
|
||||
----
|
||||
$ ./mvnw spring-boot:run
|
||||
----
|
||||
|
||||
Or, better yet, run the `ServiceApplication` main method from your favourite IDE.
|
||||
|
||||
== Generating a project
|
||||
If you go to `localhost:8080` with your browser, you'll get a json document that describes
|
||||
the capabilities of the service. There are several ways you can generate a project.
|
||||
|
||||
If you have `HTTPie` installed, try the following:
|
||||
|
||||
[indent=0]
|
||||
----
|
||||
$ http :8080
|
||||
----
|
||||
|
||||
If you prefer to use `cURL`, try this instead:
|
||||
|
||||
[indent=0]
|
||||
----
|
||||
$ curl localhost:8080
|
||||
----
|
||||
|
||||
If you have the `spring` CLI installed, you can also use it as follows:
|
||||
|
||||
[indent=0]
|
||||
----
|
||||
$ spring init --target http://localhost:8080 --list
|
||||
----
|
||||
|
||||
Finally, you can configure your IDE to point to another service instance.
|
||||
|
||||
== Configuration
|
||||
The configuration in `application.yml` is very simple with a single `web` dependency that
|
||||
brings `spring-boot-starter-web`. You can experiment by adding more dependencies or other
|
||||
elements that drive how projects are generated.
|
||||
|
||||
|
41
initializr-service-sample/pom.xml
Normal file
41
initializr-service-sample/pom.xml
Normal file
@@ -0,0 +1,41 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>io.spring.initializr</groupId>
|
||||
<artifactId>initializr</artifactId>
|
||||
<version>${revision}</version>
|
||||
</parent>
|
||||
<artifactId>initializr-service-sample</artifactId>
|
||||
<name>Spring Initializr :: Service (Sample)</name>
|
||||
|
||||
<properties>
|
||||
<main.basedir>${basedir}/..</main.basedir>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.spring.initializr</groupId>
|
||||
<artifactId>initializr-web</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.spring.initializr</groupId>
|
||||
<artifactId>initializr-generator-spring</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-devtools</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
</project>
|
@@ -0,0 +1,38 @@
|
||||
/*
|
||||
* Copyright 2012-2019 the original author or authors.
|
||||
*
|
||||
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||
* you may not use this file except in compliance with the License.
|
||||
* You may obtain a copy of the License at
|
||||
*
|
||||
* https://www.apache.org/licenses/LICENSE-2.0
|
||||
*
|
||||
* Unless required by applicable law or agreed to in writing, software
|
||||
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||
* See the License for the specific language governing permissions and
|
||||
* limitations under the License.
|
||||
*/
|
||||
|
||||
package sample.service;
|
||||
|
||||
import org.springframework.boot.SpringApplication;
|
||||
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||
import org.springframework.cache.annotation.EnableCaching;
|
||||
import org.springframework.scheduling.annotation.EnableAsync;
|
||||
|
||||
/**
|
||||
* Sample service application.
|
||||
*
|
||||
* @author Stephane Nicoll
|
||||
*/
|
||||
@SpringBootApplication
|
||||
@EnableCaching
|
||||
@EnableAsync
|
||||
public class ServiceApplication {
|
||||
|
||||
public static void main(String[] args) {
|
||||
SpringApplication.run(ServiceApplication.class, args);
|
||||
}
|
||||
|
||||
}
|
49
initializr-service-sample/src/main/resources/application.yml
Normal file
49
initializr-service-sample/src/main/resources/application.yml
Normal file
@@ -0,0 +1,49 @@
|
||||
initializr:
|
||||
dependencies:
|
||||
- name: Web
|
||||
content:
|
||||
- name: Web
|
||||
id: web
|
||||
description: Servlet web application with Spring MVC and Tomcat
|
||||
types:
|
||||
- name: Maven Project
|
||||
id: maven-project
|
||||
description: Generate a Maven based project archive
|
||||
tags:
|
||||
build: maven
|
||||
format: project
|
||||
default: true
|
||||
action: /starter.zip
|
||||
- name: Gradle Project
|
||||
id: gradle-project
|
||||
description: Generate a Gradle based project archive
|
||||
tags:
|
||||
build: gradle
|
||||
format: project
|
||||
default: false
|
||||
action: /starter.zip
|
||||
packagings:
|
||||
- name: Jar
|
||||
id: jar
|
||||
default: true
|
||||
- name: War
|
||||
id: war
|
||||
default: false
|
||||
javaVersions:
|
||||
- id: 11
|
||||
default: false
|
||||
- id: 1.8
|
||||
name: 8
|
||||
default: true
|
||||
languages:
|
||||
- name: Java
|
||||
id: java
|
||||
default: true
|
||||
- name: Kotlin
|
||||
id: kotlin
|
||||
default: false
|
||||
- name: Groovy
|
||||
id: groovy
|
||||
default: false
|
||||
group-id:
|
||||
value: org.acme
|
2
pom.xml
2
pom.xml
@@ -53,6 +53,7 @@
|
||||
<module>initializr-generator</module>
|
||||
<module>initializr-generator-spring</module>
|
||||
<module>initializr-metadata</module>
|
||||
<module>initializr-service-sample</module>
|
||||
<module>initializr-web</module>
|
||||
</modules>
|
||||
|
||||
@@ -194,6 +195,7 @@
|
||||
<configuration>
|
||||
<skip>${disable.checks}</skip>
|
||||
<configLocation>src/checkstyle/checkstyle.xml</configLocation>
|
||||
<suppressionsLocation>src/checkstyle/checkstyle-suppressions.xml</suppressionsLocation>
|
||||
<includeTestSourceDirectory>true</includeTestSourceDirectory>
|
||||
<propertyExpansion>main.basedir=${main.basedir}</propertyExpansion>
|
||||
</configuration>
|
||||
|
9
src/checkstyle/checkstyle-suppressions.xml
Normal file
9
src/checkstyle/checkstyle-suppressions.xml
Normal file
@@ -0,0 +1,9 @@
|
||||
<?xml version="1.0"?>
|
||||
<!DOCTYPE suppressions PUBLIC
|
||||
"-//Checkstyle//DTD SuppressionFilter Configuration 1.2//EN"
|
||||
"https://checkstyle.org/dtds/suppressions_1_2.dtd">
|
||||
<suppressions>
|
||||
<suppress files=".+Application\.java" checks="HideUtilityClassConstructor"/>
|
||||
<suppress files="[\\/]initializr-service-sample[\\/]" checks="JavadocType"/>
|
||||
<suppress files="[\\/]initializr-service-sample[\\/]" checks="ImportControl"/>
|
||||
</suppressions>
|
Reference in New Issue
Block a user