2015-01-20 1 views
0

저는 꽤 오래 동안 내 머리를 쾅 쾅 대고 있었고 실제로 많은 문제를 배웠습니다. stackoverflow 꽤 확실한 몇 가지 일반적인 실수 (게다가, 내가 bitbucket과 github와 여러 릴리스를 했어)를 주연했다 덮여. 하지만 여전히 나는 아무것도 공개 할 수 없었습니다. 나는 작은 도움을 외칠 때가 된 듯합니다.Maven 릴리스 프로세스가 계속 실패합니다 : svn : E175013 : '/ svn/tester /! svn/bc/170'액세스가 금지되었습니다.

usvn으로 관리되는 자체 호스팅 된 Subversion과 소니 형식 개인 넥서스 리포지토리를 사용합니다. 다중 모듈 maven 프로젝트를 상위 및 하위 모듈 모델로 정렬했습니다. 다음은

아래는
<build> 
    <pluginManagement> 
     <plugins> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-surefire-plugin</artifactId> 
       <version>2.12</version> 
       <configuration> 
        <excludes> 
         <exclude>**/*ITest.java</exclude> 
        </excludes> 
       </configuration> 
      </plugin> 
      <plugin> 
       <artifactId>maven-failsafe-plugin</artifactId> 
       <version>2.6</version> 
       <executions> 
        <execution> 
         <goals> 
          <goal>integration-test</goal> 
          <goal>verify</goal> 
         </goals> 
        </execution> 
       </executions> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-compiler-plugin</artifactId> 
       <version>2.0.2</version> 
       <configuration> 
        <source>1.7</source> 
        <target>1.7</target> 
        <encoding>${project.build.sourceEncoding} </encoding> 
        <meminitial>128m</meminitial> 
        <maxmem>512m</maxmem> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-resources-plugin</artifactId> 
       <version>2.4.3</version> 
       <configuration> 
        <encoding>${project.build.sourceEncoding} </encoding> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>org.apache.maven.plugins</groupId> 
       <artifactId>maven-release-plugin</artifactId> 
       <version>2.3.2</version> 
       <configuration> 
        <preparationGoals>clean verify -DenableIT=true</preparationGoals> 
         <tagBase>https://repo.mysvnserver.com/svn/tester/tags</tagBase> 
       </configuration> 
      </plugin> 
      <plugin> 
       <groupId>com.mysema.maven</groupId> 
       <artifactId>maven-apt-plugin</artifactId> 
       <version>1.0</version> 
      </plugin> 

      <plugin> 
       <groupId>org.codehaus.mojo</groupId> 
       <artifactId>build-helper-maven-plugin</artifactId> 
       <version>1.9</version> 
      </plugin> 
     </plugins> 
    </pluginManagement> 
</build> 

<distributionManagement> 
    <repository> 
     <id>dal</id> 
       <url>http://nexus.mynexusserver.com/nexus/content/repositories/releases</url> 
    </repository> 
</distributionManagement> 

<scm> 
         <connection>scm:svn:https://[email protected]/svn/tester</connection> 
    <developerConnection>scm:svn:https://[email protected]/svn/tester</developerConnection> 
     <url>https://repo.mysvnserver.com/usvn/project/tester/browser</url> 
    <tag>tester</tag> 
</scm> 

내 Settings.XML의 파일입니다 관련이 부모 치어의 조각입니다 :

<?xml version="1.0" encoding="UTF-8"?> 
<settings > 
    <localRepository>/home/joseph/.m2/repository</localRepository> 
    <servers> 
    <server> 
     <username>username</username> 
     <password>password</password> 
     <id>nexus</id> 
    </server> 
<server> 
     <username>username</username> 
     <password>password</password> 
     <id>dal</id> 
    </server> 
</servers> 

<mirrors> 
    <mirror> 
     <!--This sends everything else to /public --> 
     <id>nexus</id> 
     <mirrorOf>central</mirrorOf> 
     <url>http://nexus.mynexusserver.com/nexus/content/repositories/public/</url> 
    </mirror> 
</mirrors> 
<profiles> 
    <profile> 
     <id>nexus</id> 
     <!--Enable snapshots for the built in central repo to direct --> 
     <!--all requests to nexus via the mirror --> 
     <repositories> 
      <repository> 
       <id>central</id> 
       <url>http://central</url> 
       <releases> 
        <enabled>true</enabled> 
       </releases> 
       <snapshots> 
        <enabled>true</enabled> 
       </snapshots> 
      </repository> 
    <repository> 
       <id>dal</id> 
       <url>http://nexus.mynexusserver.com/nexus/content/repositories/releases</url> 
       <releases> 
        <enabled>true</enabled> 
       </releases> 
       <snapshots> 
        <enabled>true</enabled> 
       </snapshots> 
      </repository> 
     </repositories> 
     <pluginRepositories> 
      <pluginRepository> 
       <id>central</id> 
       <url>http://central</url> 
       <releases> 
        <enabled>true</enabled> 
       </releases> 
       <snapshots> 
        <enabled>true</enabled> 
       </snapshots> 
      </pluginRepository> 
     </pluginRepositories> 
    </profile> 
</profiles> 
<activeProfiles> 
    <!--make the profile active all the time --> 
    <activeProfile>nexus</activeProfile> 
</activeProfiles> 
</settings> 

이후 것이라고 여기에 출력을 넣어 아마 너무 많이주세요 paste.ee에서 찾으십시오.

상황이 다소 나빠 보이기 때문에 Subversion 측에서 설정 문제가 있다는 것을 더 납득합니다. 아무도 내가 누락 된 부분을 지적 할 수 있습니까?

감사

+0

아마도 사용자의 권한이 누락되었습니다. 그냥 svn 클라이언트를 사용하여 같은 명령 (귀하의 출력을 참조하십시오, 그들은 거기에 있어야합니다)을 수행하려고합니다. SVN 구조가 이상하게 보입니다. 일반적으로 _http : //mysvn.mycompany.com/repo/trunk_를 _http : //mysvn.mycompany.com/repo/tags_에 복사하면 _http : //mysvn.mycompany.com이 아닌 것이됩니다./repo_ – Tome

+0

오, 무슨 뜻인지 알 겠어. 우리는 배포 후보를 분기합니다. 우리는 지점에서 그것을 안정시키고 트렁크에 다시 병합하기 전에 지점에서 그것을 풀어 놓습니다. 일부 프로젝트의 경우 트렁크에서 릴리스합니다. 나는 완전한 레포 (repo)가 무슨 뜻인지 이해하지 못합니다. 감사합니다 –

+0

그냥 _https : //repo.mysvnserver.com/usvn/project/tester/browser_가 트렁크 또는 분기 URL처럼 보이지 않지만 어쨌든 오류는 인증 문제에서 비롯된 것이므로 반드시 Maven 외부에서 작동합니다. – Tome

답변

1

당신의 POM의 SCM 부분은 실제 SVN 지점 (또는 켜세요 K) 프로젝트의 관련이없는 보인다. 릴리스 플러그인의 SCM 연결 부분이 작동하려면 what is described in the SCM plugin에 가까운 SCM 구성을 만들어야합니다. 프로젝트 POM SCM 정보는 정확한 프로젝트 버전 인 과 관련된 소스 코드를 가져올 위치를 설명해야합니다. 루트 프로젝트 위치가 아닙니다.

나는이 설정이 없으면 실제로 권한을 설정하지 않은 URL에 액세스하려고 시도하기 때문에 예기치 않은 권한 부여 문제가 발생할 수 있습니다.