Ошибка сборки образца Spring Security RC2

Я получаю следующую ошибку при попытке собрать spring-security-samples-ldap-jc. Я использую 3.2.RC2. Я добавил http://repo.spring.io/milestone в набор репозиториев в моем пом.xml

    [INFO] Scanning for projects...
    [WARNING] 
    [WARNING] Some problems were encountered while building the effective model for org.springframework.security:spring-security-samples-ldap-jc:war:3.2.0.RC2
    [WARNING] 'dependencies.dependency.(groupId:artifactId:type:classifier)' must be unique: ch.qos.logback:logback-classic:jar -> version 0.9.30 vs 0.9.29 @ line 241, column 17
    [WARNING] 'build.plugins.plugin.version' for org.apache.maven.plugins:maven-compiler-plugin is missing. @ line 45, column 15
    [WARNING] 
    [WARNING] It is highly recommended to fix these problems because they threaten the stability of your build.
    [WARNING] 
    [WARNING] For this reason, future Maven versions might no longer support building such malformed projects.
    [WARNING] 
    [INFO]                                                                         
    [INFO] ------------------------------------------------------------------------
    [INFO] Building spring-security-samples-ldap-jc 3.2.0.RC2
    [INFO] ------------------------------------------------------------------------
    [WARNING] The POM for org.springframework.security:spring-security-samples-messages-jc:jar:3.2.0.RC2 is missing, no dependency information available
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD FAILURE
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 0.895s
    [INFO] Finished at: Sat Nov 02 13:48:02 PDT 2013
    [INFO] Final Memory: 4M/119M
    [INFO] ------------------------------------------------------------------------
    [ERROR] Failed to execute goal on project spring-security-samples-ldap-jc: Could not resolve dependencies for project org.springframework.security:spring-security-samples-ldap-jc:war:3.2.0.RC2: Failure to find org.springframework.security:spring-security-samples-messages-jc:jar:3.2.0.RC2 in http://repo.spring.io/milestone was cached in the local repository, resolution will not be reattempted until the update interval of spring-milestone has elapsed or updates are forced -> [Help 1]
    [ERROR] 
    [ERROR] To see the full stack trace of the errors, re-run Maven with the -e switch.
    [ERROR] Re-run Maven using the -X switch to enable full debug logging.
    [ERROR] 
    [ERROR] For more information about the errors and possible solutions, please read the following articles:
    [ERROR] [Help 1] http://cwiki.apache.org/confluence/display/MAVEN/DependencyResolutionException

Вот мой pom.xml

    <?xml version="1.0" encoding="UTF-8"?>
    <project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 

    http://maven.apache.org/xsd/maven-4.0.0.xsd" 

    xmlns="http://maven.apache.org/POM/4.0.0"
        xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
      <modelVersion>4.0.0</modelVersion>
      <groupId>org.springframework.security</groupId>
      <artifactId>spring-security-samples-ldap-jc</artifactId>
      <version>3.2.0.RC2</version>
      <packaging>war</packaging>
      <name>spring-security-samples-ldap-jc</name>
      <description>spring-security-samples-ldap-jc</description>
      <url>http://springsource.org/spring-security</url>
      <organization>
        <name>SpringSource</name>
        <url>http://springsource.org/</url>
      </organization>
      <licenses>
        <license>
          <name>The Apache Software License, Version 2.0</name>
          <url>http://www.apache.org/licenses/LICENSE-2.0.txt</url>
          <distribution>repo</distribution>
        </license>
      </licenses>
      <developers>
        <developer>
          <id>rwinch</id>
          <name>Rob Winch</name>
          <email>[email protected]</email>
        </developer>
      </developers>
      <scm>
        <connection>scm:git:git://github.com/SpringSource/spring-

    security</connection>
        <developerConnection>scm:git:git://github.com/SpringSource/spring-

    security</developerConnection>
        <url>https://github.com/SpringSource/spring-security</url>
      </scm>
      <build>
        <plugins>
          <plugin>
            <artifactId>maven-compiler-plugin</artifactId>
            <configuration>
              <source>1.7</source>
              <target>1.7</target>
            </configuration>
          </plugin>
          <plugin>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.3</version>
            <configuration>
              <failOnMissingWebXml>false</failOnMissingWebXml>
            </configuration>
          </plugin>
        </plugins>
      </build>
      <repositories>
        <repository>
          <id>spring-milestone</id>
          <url>http://repo.spring.io/milestone</url>
        </repository>
        <repository>
          <id>spring-snasphot</id>
          <url>http://repo.springsource.org/libs-snapshot</url>
        </repository>
      </repositories>
      <dependencies>
        <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>jstl</artifactId>
          <version>1.2</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>javax.validation</groupId>
          <artifactId>validation-api</artifactId>
          <version>1.0.0.GA</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.apache.directory.server</groupId>
          <artifactId>apacheds-core</artifactId>
          <version>1.5.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.apache.directory.server</groupId>
          <artifactId>apacheds-core-entry</artifactId>
          <version>1.5.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.apache.directory.server</groupId>
          <artifactId>apacheds-protocol-ldap</artifactId>
          <version>1.5.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.apache.directory.server</groupId>
          <artifactId>apacheds-protocol-shared</artifactId>
          <version>1.5.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.apache.directory.server</groupId>
          <artifactId>apacheds-server-jndi</artifactId>
          <version>1.5.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.apache.directory.shared</groupId>
          <artifactId>shared-ldap</artifactId>
          <version>0.9.15</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.hibernate</groupId>
          <artifactId>hibernate-validator</artifactId>
          <version>4.2.0.Final</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>jcl-over-slf4j</artifactId>
          <version>1.7.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>jul-to-slf4j</artifactId>
          <version>1.7.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>log4j-over-slf4j</artifactId>
          <version>1.7.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.slf4j</groupId>
          <artifactId>slf4j-api</artifactId>
          <version>1.7.5</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework.security</groupId>
          <artifactId>spring-security-config</artifactId>
          <version>3.2.0.RC2</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework.security</groupId>
          <artifactId>spring-security-core</artifactId>
          <version>3.2.0.RC2</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework.security</groupId>
          <artifactId>spring-security-ldap</artifactId>
          <version>3.2.0.RC2</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework.security</groupId>
          <artifactId>spring-security-samples-messages-jc</artifactId>
          <version>3.2.0.RC2</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework.security</groupId>
          <artifactId>spring-security-web</artifactId>
          <version>3.2.0.RC2</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-core</artifactId>
          <version>3.2.4.RELEASE</version>
          <scope>compile</scope>
          <exclusions>
            <exclusion>
              <artifactId>commons-logging</artifactId>
              <groupId>commons-logging</groupId>
            </exclusion>
          </exclusions>
        </dependency>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-jdbc</artifactId>
          <version>3.2.4.RELEASE</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-webmvc</artifactId>
          <version>3.2.4.RELEASE</version>
          <scope>compile</scope>
        </dependency>
        <dependency>
          <groupId>commons-logging</groupId>
          <artifactId>commons-logging</artifactId>
          <version>1.1.1</version>
          <scope>compile</scope>
          <optional>true</optional>
        </dependency>
        <dependency>
          <groupId>javax.servlet.jsp</groupId>
          <artifactId>jsp-api</artifactId>
          <version>2.1</version>
          <scope>provided</scope>
        </dependency>
        <dependency>
          <groupId>javax.servlet</groupId>
          <artifactId>javax.servlet-api</artifactId>
          <version>3.0.1</version>
          <scope>provided</scope>
        </dependency>
        <dependency>
          <groupId>cglib</groupId>
          <artifactId>cglib-nodep</artifactId>
          <version>2.2.2</version>
          <scope>runtime</scope>
        </dependency>
        <dependency>
          <groupId>ch.qos.logback</groupId>
          <artifactId>logback-classic</artifactId>
          <version>0.9.30</version>
          <scope>runtime</scope>
        </dependency>
        <dependency>
          <groupId>opensymphony</groupId>
          <artifactId>sitemesh</artifactId>
          <version>2.4.2</version>
          <scope>runtime</scope>
        </dependency>
        <dependency>
          <groupId>ch.qos.logback</groupId>
          <artifactId>logback-classic</artifactId>
          <version>0.9.29</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>junit</groupId>
          <artifactId>junit</artifactId>
          <version>4.10</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>org.easytesting</groupId>
          <artifactId>fest-assert</artifactId>
          <version>1.4</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>org.mockito</groupId>
          <artifactId>mockito-core</artifactId>
          <version>1.9.5</version>
          <scope>test</scope>
        </dependency>
        <dependency>
          <groupId>org.springframework</groupId>
          <artifactId>spring-test</artifactId>
          <version>3.2.4.RELEASE</version>
          <scope>test</scope>
        </dependency>
      </dependencies>
      <properties>
        <m2eclipse.wtp.contextRoot>/sample</m2eclipse.wtp.contextRoot>
      </properties>
    </project>

person user2056101    schedule 02.11.2013    source источник


Ответы (2)


@Nils прав, это проблема, связанная с тем, что пример кода не развернут. Я создал SEC-2388, чтобы решить эту проблему. Тем временем вы можете обойти это, выполнив следующие шаги:

  • Загрузите дистрибутив RC2 https://github.com/spring-projects/spring-security/archive/3.2.0.RC2.zip
  • Разархивируйте его в известное место. Назовем его SPRING_SECURITY_HOME.
  • Перейдите к SPRING_SECURITY_HOME/samples/messages-jc.
  • Установите messages-jc в локальный репозиторий maven, введя в командной строке следующее:

    мвн установить

Если вы пытаетесь использовать образец в своей среде IDE, вы можете убедиться, что импортируете messages-jc в среду IDE в дополнение к любому образцу.

person Rob Winch    schedule 06.11.2013
comment
Обходной путь отлично работает, всего пара незначительных вещей в этом pom. Я получил два предупреждения [ПРЕДУПРЕЖДЕНИЕ] 'dependencies.dependency.(groupId:artifactId:type:classifier)' должен быть уникальным: org.springframework:spring-core:jar → дублирующее объявление версии 3.2.4.RELEASE @ строка 136, столбец 17 [ПРЕДУПРЕЖДЕНИЕ] 'build.plugins.plugin.version' для org.apache.maven.plugins:maven-compiler-plugin отсутствует. @ строка 36, столбец 15 Можно исправить удалением дублирования и добавлением версии в плагин компилятора - person Fran Jiménez; 26.11.2013

Зависимость spring-security-samples-messages-jc просто не может быть найдена. Я не знаком с самим примером приложения, но, возможно, этот «подпроект» отсутствует в списке импортированных проектов.

person Nils    schedule 02.11.2013