Maven: URL-адрес scm не содержит допустимый разделитель - PullRequest
2 голосов
/ 17 июня 2011

Я пытаюсь заставить работать автоматические buildNumers, но продолжаю сталкиваться с ошибкой

URL-адрес scm не содержит действительный разделитель

Вот соответствующая часть пом.

<scm>
    <connection>scm:svn:${source.repo}</connection>
    <developerConnection>scm:svn:${source.repo}</developerConnection>
    <url>${source.repo}</url>
</scm>
<plugin>
    <groupId>org.codehaus.mojo</groupId>
    <artifactId>buildnumber-maven-plugin</artifactId>
    <version>1.0</version>
    <executions>
        <execution>
            <phase>validate</phase>        
            <goals>
                <goal>create</goal>
            </goals>
        </execution>
    </executions>
    <configuration>
        <revisionOnScmFailure>1</revisionOnScmFailure>
        <format>{0,number}</format>
        <items>
            <item>buildNumber0</item>
        </items>
    </configuration>
</plugin>
<properties>
    <source.repo>svn://myserver/repository/${project.artifactId}</source.repo>
    [..]
</properties>

Местоположение Subversion содержит два ядра подпроекта и сеть.

Если кто-то может помочь, я чувствую, что перепробовал все.

Я пробовал следующее:

  • с использованием каналов: неверный URL
  • получение списка элементов с сервера с использованием URL-адреса хранилища из командной строки: отлично работает
  • добавление / trunk к URL репо: ошибка разделителя
  • добавление / trunk / core к URL репо: ошибка разделителя
  • добавление / trunk / web в URL репо: ошибка разделителя

Ошибка разделителя, вероятно, скрывает другую ошибку, потому что я не думаю, что URL неверен.

Вот стопка

java.lang.IllegalArgumentException: The scm url does not contain a valid delimit
    er.
            at org.apache.maven.scm.provider.ScmUrlUtils.getDelimiter(ScmUrlUtils.ja
    va:61)
            at org.apache.maven.scm.manager.AbstractScmManager.makeScmRepository(Abs
    tractScmManager.java:186)
            at org.codehaus.mojo.build.CreateMojo.getScmRepository(CreateMojo.java:7
    68)
            at org.codehaus.mojo.build.CreateMojo.getScmBranch(CreateMojo.java:619)
            at org.codehaus.mojo.build.CreateMojo.execute(CreateMojo.java:464)
            at org.apache.maven.plugin.DefaultPluginManager.executeMojo(DefaultPlugi
    nManager.java:490)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoals(Defa
    ultLifecycleExecutor.java:694)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalWithLi
    fecycle(DefaultLifecycleExecutor.java:556)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoal(Defau
    ltLifecycleExecutor.java:535)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeGoalAndHan
    dleFailures(DefaultLifecycleExecutor.java:387)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.executeTaskSegmen
    ts(DefaultLifecycleExecutor.java:348)
            at org.apache.maven.lifecycle.DefaultLifecycleExecutor.execute(DefaultLi
    fecycleExecutor.java:180)
            at org.apache.maven.DefaultMaven.doExecute(DefaultMaven.java:328)
            at org.apache.maven.DefaultMaven.execute(DefaultMaven.java:138)
            at org.apache.maven.cli.MavenCli.main(MavenCli.java:362)
            at org.apache.maven.cli.compat.CompatibleMain.main(CompatibleMain.java:6
    0)
            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
            at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.
    java:39)
            at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces
    sorImpl.java:25)
            at java.lang.reflect.Method.invoke(Method.java:597)
            at org.codehaus.classworlds.Launcher.launchEnhanced(Launcher.java:315)
            at org.codehaus.classworlds.Launcher.launch(Launcher.java:255)
            at org.codehaus.classworlds.Launcher.mainWithExitCode(Launcher.java:430)

            at org.codehaus.classworlds.Launcher.main(Launcher.java:375)    

Спасибо, Марк

Ответы [ 2 ]

0 голосов
/ 18 июня 2011

Попробуйте выполнить команду:

mvn help:effective-pom

и проверьте вывод.Эта и другие справочные команды должны помочь вам исправить ваши настройки Maven (например, оценка выражений, профили и т. Д.)

0 голосов
/ 17 июня 2011

Возможно, это потому, что вы используете местозаполнитель в URI, а Maven не расширяет его перед использованием.

Я сам с Maven боролся с такими вещами, а иногда вам просто нужносдаться и выполнить расширение вручную.


Другая возможность состояла в том, что расширенный URL scm:svn:svn://myserver/repository/.... был неправильным, но комментарий @ ach_l убеждает меня, что это не проблема.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...