From 0e468d5afd87c7727f8f9e4a8c229f1462e4adbb Mon Sep 17 00:00:00 2001 From: Vitaliy Fedoriv <vitaliy.fedoriv@gmail.com> Date: Sun, 12 Mar 2017 00:21:34 +0200 Subject: [PATCH] update Maven config to Spring Boot --- pom.xml | 311 ++++++++++++++++++++++---------------------------------- 1 file changed, 119 insertions(+), 192 deletions(-) diff --git a/pom.xml b/pom.xml index 8a51cf68..811c8f30 100644 --- a/pom.xml +++ b/pom.xml @@ -1,52 +1,33 @@ <?xml version="1.0" encoding="UTF-8"?> -<project xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://maven.apache.org/POM/4.0.0" - xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> - <modelVersion>4.0.0</modelVersion> - <groupId>org.springframework.samples</groupId> - <artifactId>spring-petclinic</artifactId> - <version>4.2.6-SNAPSHOT</version> +<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> - <name>petclinic</name> - <packaging>war</packaging> + <groupId>org.springframework.samples</groupId> + <artifactId>spring-petclinic</artifactId> + <version>1.5.2</version> + <packaging>war</packaging> - <properties> + <name>petclinic</name> + <description>Spring petclinic project</description> - <!-- Generic properties --> - <java.version>1.7</java.version> - <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> - <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> + <parent> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-parent</artifactId> + <version>1.5.2.RELEASE</version> + <relativePath/> <!-- lookup parent from repository --> + </parent> - <!-- Spring --> - <spring-io-platform.version>2.0.8.RELEASE</spring-io-platform.version> + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> + <java.version>1.7</java.version> + <spring-data-jdbc.version>1.1.0.RELEASE</spring-data-jdbc.version> - - - <!-- Java EE / Java SE dependencies --> - <tomcat.version>7.0.59</tomcat.version> - - <!-- Test --> - <assertj.version>2.2.0</assertj.version> - - <!-- Others --> - <mysql-driver.version>5.1.36</mysql-driver.version> - - <postgresql-driver.version>9.4.1211.jre7</postgresql-driver.version> - - <cobertura.version>2.7</cobertura.version> - </properties> - - <dependencyManagement> - <!-- Import the maven Spring IO Platform Bill Of Materials (BOM) --> - <dependencies> - <dependency> - <groupId>io.spring.platform</groupId> - <artifactId>platform-bom</artifactId> - <version>${spring-io-platform.version}</version> - <type>pom</type> - <scope>import</scope> - </dependency> - </dependencies> - </dependencyManagement> + <cobertura.version>2.7</cobertura.version> + + </properties> + <!-- repository for springfox plugin --> <repositories> <repository> @@ -56,40 +37,49 @@ </repository> </repositories> - <dependencies> - <dependency> - <groupId>org.apache.tomcat</groupId> - <artifactId>tomcat-servlet-api</artifactId> - <version>${tomcat.version}</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>org.apache.tomcat</groupId> - <artifactId>tomcat-jasper-el</artifactId> - <version>${tomcat.version}</version> - <scope>provided</scope> - </dependency> - <!-- JSon --> - <dependency> - <groupId>com.fasterxml.jackson.core</groupId> - <artifactId>jackson-core</artifactId> - </dependency> - <dependency> - <groupId>com.fasterxml.jackson.core</groupId> - <artifactId>jackson-databind</artifactId> - </dependency> - <dependency> - <groupId>com.jayway.jsonpath</groupId> - <artifactId>json-path</artifactId> - <scope>test</scope> - </dependency> - <!-- SPRING, SPRING, SPRINGITY SPRING --> - <dependency> - <groupId>org.springframework.data</groupId> - <artifactId>spring-data-jpa</artifactId> - </dependency> - - <dependency> + <dependencies> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-aop</artifactId> + </dependency> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-cache</artifactId> + </dependency> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-data-jpa</artifactId> + </dependency> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-data-rest</artifactId> + </dependency> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-jdbc</artifactId> + </dependency> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-web</artifactId> + </dependency> +<!-- + <dependency> + <groupId>org.hsqldb</groupId> + <artifactId>hsqldb</artifactId> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>mysql</groupId> + <artifactId>mysql-connector-java</artifactId> + <scope>runtime</scope> + </dependency> + <dependency> + <groupId>org.postgresql</groupId> + <artifactId>postgresql</artifactId> + <scope>runtime</scope> + </dependency> +--> + <dependency> <groupId>org.springframework.data</groupId> <artifactId>spring-data-jdbc-core</artifactId> <version>${spring-data-jdbc.version}</version> @@ -101,81 +91,33 @@ <!-- because Spring Data usually comes with a slightly older version of Spring --> </exclusions> </dependency> - - <dependency> - <groupId>org.springframework</groupId> - <artifactId>spring-jdbc</artifactId> - </dependency> - <dependency> - <groupId>org.springframework</groupId> - <artifactId>spring-webmvc</artifactId> - </dependency> - <!-- used for EhCacheCacheManager --> - <dependency> - <groupId>org.springframework</groupId> - <artifactId>spring-context-support</artifactId> - </dependency> - <dependency> - <groupId>org.springframework</groupId> - <artifactId>spring-oxm</artifactId> - </dependency> - - <dependency> - <groupId>org.aspectj</groupId> - <artifactId>aspectjrt</artifactId> - </dependency> - <dependency> - <groupId>org.aspectj</groupId> - <artifactId>aspectjweaver</artifactId> - <scope>runtime</scope> - </dependency> - - <!-- Database connection pool - See here for more details on commons-dbcp versus tomcat-jdbc: - http://blog.ippon.fr/2013/03/13/improving-the-performance-of-the-spring-petclinic-sample-application-part-3-of-5/ - --> + + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-tomcat</artifactId> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-starter-test</artifactId> + <scope>test</scope> + </dependency> + <dependency> - <groupId>org.apache.tomcat</groupId> - <artifactId>tomcat-jdbc</artifactId> - <scope>runtime</scope> + <groupId>com.fasterxml.jackson.core</groupId> + <artifactId>jackson-core</artifactId> </dependency> - - <!-- Logging with SLF4J & LogBack --> <dependency> - <groupId>org.slf4j</groupId> - <artifactId>slf4j-api</artifactId> + <groupId>com.fasterxml.jackson.core</groupId> + <artifactId>jackson-databind</artifactId> </dependency> <dependency> - <groupId>ch.qos.logback</groupId> - <artifactId>logback-classic</artifactId> - <scope>runtime</scope> + <groupId>com.jayway.jsonpath</groupId> + <artifactId>json-path</artifactId> + <scope>test</scope> </dependency> - <!-- HIBERNATE --> - <dependency> - <groupId>org.hibernate</groupId> - <artifactId>hibernate-entitymanager</artifactId> - </dependency> - <dependency> - <groupId>org.hibernate</groupId> - <artifactId>hibernate-validator</artifactId> - </dependency> - <dependency> - <groupId>org.hibernate</groupId> - <artifactId>hibernate-ehcache</artifactId> - </dependency> - <dependency> - <groupId>net.sf.ehcache</groupId> - <artifactId>ehcache</artifactId> - <exclusions> - <exclusion> - <groupId>commons-logging</groupId> - <artifactId>commons-logging</artifactId> - </exclusion> - </exclusions> - </dependency> - <!-- springfox plugin for swagger documentation --> <dependency> <groupId>io.springfox</groupId> <artifactId>springfox-swagger2</artifactId> @@ -187,45 +129,32 @@ <version>2.6.1</version> </dependency> - <!-- Test Artifacts --> - <dependency> - <groupId>org.springframework</groupId> - <artifactId>spring-test</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>junit</groupId> - <artifactId>junit</artifactId> - <scope>test</scope> - </dependency> - <dependency> - <groupId>org.assertj</groupId> - <artifactId>assertj-core</artifactId> - <version>${assertj.version}</version> - <scope>test</scope> - </dependency> + <dependency> <groupId>org.mockito</groupId> <artifactId>mockito-core</artifactId> <scope>test</scope> </dependency> - <dependency> - <groupId>org.hamcrest</groupId> - <artifactId>hamcrest-all</artifactId> - <scope>test</scope> - </dependency> - <!-- temporary fix: below dependency should not be necessary as it is a transitive dependency. - For some reason we can't build the app unless it is a first level dependency --> - <!-- <dependency> - <groupId>com.googlecode.json-simple</groupId> - <artifactId>json-simple</artifactId> + <groupId>org.hamcrest</groupId> + <artifactId>hamcrest-all</artifactId> + <version>1.3</version> + <scope>test</scope> </dependency> - --> - </dependencies> + </dependencies> - <!-- Maven plugin versions are mentioned in order to guarantee the build reproducibility in the long term --> + <build> + <plugins> + <plugin> + <groupId>org.springframework.boot</groupId> + <artifactId>spring-boot-maven-plugin</artifactId> + </plugin> + </plugins> + </build> + + + <!-- <build> <defaultGoal>install</defaultGoal> <finalName>petclinic</finalName> @@ -237,7 +166,6 @@ </resources> <testResources> <testResource> - <!-- declared explicitly so Spring config files can be placed next to their corresponding JUnit test class --> <directory>${project.basedir}/src/test/java</directory> </testResource> <testResource> @@ -339,7 +267,7 @@ </execution> </executions> </plugin> - <!--Specify the encoding for copying resources--> + <plugin> <groupId>org.apache.maven.plugins</groupId> <artifactId>maven-resources-plugin</artifactId> @@ -349,6 +277,7 @@ </plugin> </plugins> </build> + --> <reporting> <plugins> <!-- integrate maven-cobertura-plugin to project site --> @@ -381,11 +310,11 @@ <jdbc.password/> </properties> <dependencies> - <dependency> - <groupId>org.hsqldb</groupId> - <artifactId>hsqldb</artifactId> - <scope>runtime</scope> - </dependency> + <dependency> + <groupId>org.hsqldb</groupId> + <artifactId>hsqldb</artifactId> + <scope>runtime</scope> + </dependency> </dependencies> </profile> <profile> @@ -400,11 +329,10 @@ </properties> <dependencies> <dependency> - <groupId>mysql</groupId> - <artifactId>mysql-connector-java</artifactId> - <version>${mysql-driver.version}</version> - <scope>runtime</scope> - </dependency> + <groupId>mysql</groupId> + <artifactId>mysql-connector-java</artifactId> + <scope>runtime</scope> + </dependency> </dependencies> </profile> <profile> @@ -418,12 +346,11 @@ <jdbc.password>petclinic</jdbc.password> </properties> <dependencies> - <dependency> - <groupId>org.postgresql</groupId> - <artifactId>postgresql</artifactId> - <version>${postgresql-driver.version}</version> - <scope>runtime</scope> - </dependency> + <dependency> + <groupId>org.postgresql</groupId> + <artifactId>postgresql</artifactId> + <scope>runtime</scope> + </dependency> </dependencies> </profile> </profiles> -- GitLab