官术网_书友最值得收藏!

Adding Spring Boot to our main project

We will use the Java 9 to develop microservices. Therefore, we'll use the latest Spring Framework and Spring Boot project. At the time of writing, Spring Boot 2.0.0 build snapshot release version was available.

You can use the latest released version. Spring Boot 2.0.0 build snapshot uses Spring 5 (5.0.0 build snapshot release).

Let's take a look at the following steps and learn about adding Spring Boot to our main project:

  1. Open the pom.xml file (available under 6392_chapter2 | Project Files) to add Spring Boot to your sample project:
<?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> 
 
    <groupId>com.packtpub.mmj</groupId> 
    <artifactId>6392_chapter2</artifactId> 
    <version>1.0-SNAPSHOT</version> 
    <packaging>pom</packaging> 
 
    <modules> 
        <module>lib</module> 
        <module>rest</module> 
    </modules> 
 
    <properties> 
        <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> 
        <spring-boot-version>2.0.0.BUILD-SNAPSHOT</spring-boot-version> 
        <spring-version>5.0.0.BUILD-SNAPSHOT</spring-version> 
        <maven.compiler.source>9</maven.compiler.source> 
        <maven.compiler.target>9</maven.compiler.target> 
        <start-class>com.packtpub.mmj.rest.RestSampleApp</start-class> 
    </properties> 
    <parent> 
        <groupId>org.springframework.boot</groupId> 
        <artifactId>spring-boot-starter-parent</artifactId> 
        <version>2.0.0.BUILD-SNAPSHOT</version> 
    </parent> 
    <dependencyManagement> 
        <dependencies> 
            <dependency> 
                <groupId>com.packtpub.mmj</groupId> 
                <artifactId>rest</artifactId> 
                <version>${project.version}</version> 
            </dependency> 
            <dependency> 
                <groupId>com.packtpub.mmj</groupId> 
                <artifactId>lib</artifactId> 
                <version>${project.version}</version> 
            </dependency> 
        </dependencies> 
    </dependencyManagement> 
 
    <build> 
        <plugins> 
            <plugin> 
                <groupId>org.springframework.boot</groupId> 
                <artifactId>spring-boot-maven-plugin</artifactId> 
                <version>2.0.0.BUILD-SNAPSHOT</version> 
                <executions> 
                    <execution> 
                        <goals> 
                            <goal>repackage</goal> 
                        </goals> 
                        <configuration> 
                            <classifier>exec</classifier> 
                            <mainClass>${start-class}</mainClass> 
                        </configuration> 
                    </execution> 
                </executions> 
            </plugin> 
            <plugin> 
                <groupId>org.apache.maven.plugins</groupId> 
                <artifactId>maven-compiler-plugin</artifactId> 
                <version>3.6.1</version> 
                <configuration> 
                    <source>1.9</source> 
                    <target>1.9</target> 
                    <showDeprecation>true</showDeprecation> 
                    <showWarnings>true</showWarnings> 
                </configuration> 
            </plugin> 
        </plugins> 
    </build> 
    <repositories> 
        <repository> 
            <id>spring-snapshots</id> 
            <name>Spring Snapshots</name> 
            <url>https://repo.spring.io/snapshot</url> 
            <snapshots> 
                <enabled>true</enabled> 
            </snapshots> 
        </repository> 
        <repository> 
            <id>spring-milestones</id> 
            <name>Spring Milestones</name> 
            <url>https://repo.spring.io/milestone</url> 
            <snapshots> 
                <enabled>false</enabled> 
            </snapshots> 
        </repository> 
    </repositories> 
 
    <pluginRepositories> 
        <pluginRepository> 
            <id>spring-snapshots</id> 
            <name>Spring Snapshots</name> 
            <url>https://repo.spring.io/snapshot</url> 
            <snapshots> 
                <enabled>true</enabled> 
            </snapshots> 
        </pluginRepository> 
        <pluginRepository> 
            <id>spring-milestones</id> 
            <name>Spring Milestones</name> 
            <url>https://repo.spring.io/milestone</url> 
            <snapshots> 
                <enabled>false</enabled> 
            </snapshots> 
        </pluginRepository> 
    </pluginRepositories> 
</project> 

You can observe that we have defined our two modules lib and rest in parent project pom.xml.

  1. If you are adding these dependencies for the first time, you need to download the dependencies by right-clicking on the Dependencies folder under the 6392_chapter2 project in the Projects pane, as shown in the following screenshot:

Download Maven Dependencies in NetBeans

  1. Similarly, to resolve the project problems, right-click on the NetBeans project 6392_chapter2 and opt for the Resolve Project Problems.... It will open the dialog shown as follows. Click on the Resolve... button to resolve the issues:

Resolve project problems dialog

  1. If you are using Maven behind the proxy, then update the proxies in settings.xml in Maven home directory. If you are using the Maven bundled with NetBeans then use <NetBeans Installation Directory>\java\maven\conf\settings.xml. You may need to restart the NetBeans IDE.

The preceding steps will download all the required dependencies from a remote Maven repository if the declared dependencies and transitive dependencies are not available in a local Maven repository. If you are downloading the dependencies for the first time, then it may take a bit of time, depending on your internet speed.

主站蜘蛛池模板: 崇仁县| 科尔| 青河县| 普兰店市| 阳西县| 赫章县| 隆尧县| 屏东县| 新野县| 西和县| 肥东县| 阿城市| 牡丹江市| 琼海市| 高唐县| 多伦县| 乌拉特中旗| 井研县| 鹿泉市| 怀宁县| 海宁市| 永安市| 固阳县| 衡阳县| 惠州市| 江城| 梁平县| 苍南县| 南华县| 宁都县| 洛扎县| 抚远县| 保定市| 鹿泉市| 长兴县| 偃师市| 毕节市| 宜川县| 广水市| 苍溪县| 华池县|