title: How to use different spring module (spring-data-redis) version in specific spring boot version
body: <p>I have a <code>Spring boot</code> project - its parent is <code>spring-boot-starter-parent:2.1.9.RELEASE</code>. I want to use the <code>spring-data-redis</code> with <code>2.2.0.RELEASE</code> version (not the <code>spring-boot-starter-data-redis</code> because this does not support <code>redis-streams</code>). Also I use <code>Lettuce</code> version <code>io.lettuce:lettuce-core:5.2.0.RELEASE</code>.</p>
  
  <p>My <code>pom.xml</code></p>
  
  <pre><code>     &lt;parent&gt;
          &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
          &lt;artifactId&gt;spring-boot-starter-parent&lt;/artifactId&gt;
          &lt;version&gt;2.1.9.RELEASE&lt;/version&gt;
          &lt;relativePath /&gt; &lt;!-- lookup parent from repository --&gt;
      &lt;/parent&gt;
      ...
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
          &lt;artifactId&gt;spring-boot-starter-data-redis&lt;/artifactId&gt;
      &lt;/dependency&gt; 
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework.boot&lt;/groupId&gt;
          &lt;artifactId&gt;spring-boot-starter-web&lt;/artifactId&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;org.springframework.data&lt;/groupId&gt;
          &lt;artifactId&gt;spring-data-redis&lt;/artifactId&gt;
          &lt;version&gt;2.2.0.RELEASE&lt;/version&gt;
      &lt;/dependency&gt;
      &lt;dependency&gt;
          &lt;groupId&gt;io.lettuce&lt;/groupId&gt;
          &lt;artifactId&gt;lettuce-core&lt;/artifactId&gt;
          &lt;version&gt;5.2.0.RELEASE&lt;/version&gt;
      &lt;/dependency&gt;
  </code></pre>
  
  <p>However, I get the following error when run, though the application has no compilation errors.</p>
  
  <pre><code>***************************
  APPLICATION FAILED TO START
  ***************************
  
  Description:
  
  An attempt was made to call a method that does not exist. The attempt was made from the following location:
  
              org.springframework.data.redis.repository.configuration.RedisRepositoryConfigurationExtension.createMappingConfigBeanDef(RedisRepositoryConfigurationExtension.java:168)
  
  The following method did not exist:
  
  org/springframework/data/repository/config/RepositoryConfigurationSource.getRequiredAttribute(Ljava/lang/String;Ljava/lang/Class;)Ljava/lang/Object;
  
  The method's class, org.springframework.data.repository.config.RepositoryConfigurationSource, is available from the following locations:
  
      jar:file:/Users/user1/.m2/repository/org/springframework/data/spring-data-commons/2.1.11.RELEASE/spring-data-commons-2.1.11.RELEASE.jar!/org/springframework/data/repository/config/RepositoryConfigurationSource.class
  
  It was loaded from the following location:
  
  file:/Users/user1/.m2/repository/org/springframework/data/spring-data-commons/2.1.11.RELEASE/spring-data-commons-2.1.11.RELEASE.jar
  
  
  Action:
  
  Correct the classpath of your application so that it contains a single, compatible version of org.springframework.data.repository.config.RepositoryConfigurationSource
  </code></pre>
  
  <p>The <code>spring-data-redis</code> is resolved to <code>2.1.11.release</code> version.</p>