我怎样才能自己获得一个像“ start.spring.io”这样的springboot项目?

时间:2018-08-16 03:03:18

标签: java spring maven

当我使用https://start.spring.io/获得一个springboot项目时,我只需输入Group Artifact并单击Generate Project按钮,然后我得到一个空的springboot项目。

但是我想知道,当我单击Generate Project按钮时,它在服务器上做了什么?换句话说,如果我想自己完成一个springboot项目,该怎么办?

我知道可以使用mvn来获得springmvc项目:

mvn archetype:generate -DgroupId=com.spring -DartifactId=SpringMVC -DarchetypeArtifactId=maven-archetype-webapp -DinteractivMode=false -DarchetypeCatalog=internal

然后它给了我pom.xmlsrc/。但是springboot项目有mvnwmvnw.cmd.mvn,我不知道如何获取文件!

3 个答案:

答案 0 :(得分:1)

因此,具体而言,有一个端点采用start.spring.io提供的形式(称为ProjectRequest)。基于这些设置,将调用ProjectGenerator。这将在具有以下内容的临时目录中创建一个项目:

  • 一个构建文件(对于Maven是pom.xml,对于Gradle是build.gradle
  • 构建的包装器(还是Maven或Gradle,具体取决于project-type参数,该参数由UI顶部的下拉列表实现)
  • 该应用程序的简单类
  • 对该应用程序的简单测试
  • 一个空的配置文件(application.properties)。

ProjectGenerator也可以对某些选择做出反应。例如,如果请求一个Web应用程序(因为它具有“ Web”构面),则会分别为视图和静态资产创建一个templatesstatic目录。

使用Mustache模板创建文件。

如果您想进一步了解其工作原理,请检查source codedocumentation

答案 1 :(得分:0)

mvnwmvnw.cmd是来自Maven Wrapper project的文件。 pom.xml中的数据根据​​您对依赖项的选择而填充为模板。 Spring没有提供直接的archetype:generate命令来生成Spring boot项目。甚至STSIntelij之类的IDE都依赖于Spring boot starter网站来生成项目。使用Maven包装器,即使maven不在路径上或未安装在系统上,用户也可以下载正确的依赖项。

答案 2 :(得分:0)

要手动创建spring boot项目,请按照以下步骤操作:

  1. 在eclipse或您正在使用的任何IDE中创建一个新的maven项目

  2. 在pom.xml中添加以下依赖项

    <dependency>
        <groupId>org.springframework.boot</groupId>
        <artifactId>spring-boot-starter-web</artifactId>
    </dependency>
    <dependency>
    <groupId>org.springframework.boot</groupId>
    <artifactId>spring-boot-devtools</artifactId>
    <scope>runtime</scope>