2016-10-30 11 views
1

私はSpringブート1.3.8でマルチモジュールプロジェクトを持っています。現在、私は1.4.1にアップデートしたいですが、querydsl、thyemeleaf、hibernateのようなその他のメジャーアップグレードはほとんどないので、現在のところ苦しいです。Springブートはサードパーティの依存関係を上書きするバージョン

私は、Springブート1.3.8でHibernate 5を使用することができ、プロパティ内のhibernateのバージョン番号を上書きするだけでよいという情報を発見しました。 (例:enter link description here

私は親のポンポンで行った:

<properties> 
    <hibernate.version>5.0.11.Final</hibernate.version> 
    ... 
</properties> 

それは春ブーツの依存関係は、依存関係の管理の下で宣言されている同じポンポンです:まだ私のサブモジュールIで

<dependencyManagement> 
     <dependencies> 

      <!-- SPRING-BOOT ... --> 
      <dependency> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-dependencies</artifactId> 
       <type>pom</type> 
       <version>${org.springframework.boot-version}</version> 
       <scope>import</scope> 
      </dependency> 

      .... 

have enter image description here

また、<hibernate.version>5.0.11.Final</hibernate.version>をサブモジュールpに追加しようとしましたom。変更もありません。

私には何が欠けていますか?

+0

私はどこの特性(それは親として、ばねブートスタータ親を宣言VS「春・ブート・依存関係者をインポートPOM」に関係していると思います親のものより優先する) – alexbt

+0

spring-boot-starter-parent? – alexbt

+0

ちょっとアレックス、答えてくれて、ちょうどそれに取り組んでいます。親としての親のPOMにspring-boot-starter-parentを追加すると効果があります:-)私はただ試しています、私はそれらを両方または片方だけ必要とします –

答えて

2

プロパティのオーバーライドは、spring-bootを親として宣言するときにのみ機能します。

Spring-Boot documentationから取られた)以下を使用します。

<?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> 

    <!-- Inherit defaults from Spring Boot --> 
    <parent> 
     <groupId>org.springframework.boot</groupId> 
     <artifactId>spring-boot-starter-parent</artifactId> 
     <version>1.3.8.RELEASE</version> 
    </parent> 

    <groupId>com.example</groupId> 
    <artifactId>myproject</artifactId> 
    <version>0.0.1-SNAPSHOT</version> 

    <properties> 
     <hibernate.version>5.0.11.Final</hibernate.version> 
    </properties> 

    <!-- Add typical dependencies for a web application --> 
    <dependencies> 
     <dependency> 
      <groupId>org.springframework.boot</groupId> 
      <artifactId>spring-boot-starter-web</artifactId> 
     </dependency> 
    </dependencies> 

    <!-- Package as an executable jar --> 
    <build> 
     <plugins> 
      <plugin> 
       <groupId>org.springframework.boot</groupId> 
       <artifactId>spring-boot-maven-plugin</artifactId> 
      </plugin> 
     </plugins> 
    </build> 

</project> 
+0

Hey Alex、作品私にはありがたいことです:-) –

+0

ちょっとアレックス、私のプロジェクトには2レベルまでネストされた複数のモジュールがあるので、なぜ私は春のブートに親タグを使わなかったのか分かります。あなたのソリューションで言及されたSpring Bootを使用すると、2番目のレベルで問題になります。あなたのソリューションは有効ですが、1レベル以上ネストされたプロジェクトでは有効ではありません。 –

+0

ちょっとアレックス、あなたのソリューションは、入れ子にも機能するようです。 –

関連する問題