2015-04-07 7 views
2

        Во время ТС сборки я произошел с такой проблемой:TC не будет работать на файлы с пустыми пробелами в имени на мерзавец проект

[ERROR] Failed to execute goal org.apache.maven.plugins:maven-release-plugin:2.5.1:prepare (default-cli) on project test-project: An error occurred during the status check process: Exception while executing SCM command. Error while executing command. Error inside systemOut parser: Illegal character in path at index 0: "java/releases/13.4.1/Prod/SomeFile%2013.1.1.docx" -> [Help 1] 

        Так это значит, что-то изменение файлов путь с пустым пробелы для обозначения одного, что составляет% 20.
Whek мы локально попытаться сделать то же самое в мавена:

mvn -B release:clean release:prepare release:perform -DreleaseNumber=1.1.0 -DBUILD_VERSION=1.1.0.6 -Dsomeuser | tee ~/3.1.0.6.log 

        Он хорошо, на каком-то случайном Dev среде же, на окружающую среду агента ТС работает отлично, а также.
      Еще один момент: я пробовал scm: добавьте такой файл, и он запрещает это делать., Так что я хочу, но это все, но команда mvn хорошо работала и совершила и вернула данные.
        Но сборка teamcity не срабатывает снова и снова. Мы проверили пути на агенте после проверки TC, и вместо этого он не содержал% 20, а вместо него. Таким образом, проверка выполняется без такой проблемы.
        Я пробовал некоторые эксперименты с git и хорошо выполняет такие файлы, и мы не видим никаких проблем.

        Что это может быть и как ее решить? Это может быть проблема с scm?
P.S. Мы не можем видеть во внутренних конфигурациях TC, потому что у них нет доступа, просто через веб-интерфейс.

+0

если мои предложения ниже не работает для вас, быстро исправить, может быть просто удалить пространство в файле. как правило, я бы сказал, не помещайте пробелы в файлы. Используйте обозначение camelCase или символы подчеркивания. – Japster24

+0

Мы думали об изменении имен, но проект слишком велик, и есть слишком много людей, которые совершают там, также есть некоторые документы, файлы oracle, а не только java, поэтому это может повториться, и TC потерпит неудачу. Нам нужно другое решение, если нет, то смените имена и предварительно загрузите файлы с ограничениями в именах. – lummycoder

ответ

0

        Мы выяснили, что это была проблема с scm при добавлении файлов. После переименования всех файлов он отлично работает.
        Другой подход заключается в том, чтобы добавить -DdryRun предотвращать фиксацию и нажимать изменения и вызывать сценарий оболочки с одними и теми же командами, но с общими командами git.
        Если кто знает другой подход - напишите комментарий.

+0

Какой VCS вы используете? Я видел аналогичную проблему в прошлом с SVN от пользователей Windows. – Japster24

+0

Git. Это было в описании. Git отлично работает с такими файлами, это поставщик maven git scm, который не работает в таких ситуациях. – lummycoder

0

Вам, вероятно, необходимо заменить любой% в teamcity %%, чтобы логически использовать знак%. Так что %% 20 может работать на вас.

+0

Как я мог это сделать? Есть ли какая-то конфигурация или какой-то шаг? В принципе, Teamcity не делает таких вещей, только через некоторые плагины, триггеры или добавление/изменение некоторых параметров на некоторые инструменты (например, git) - вот как я это понимаю. – lummycoder

1

Что мне помогло было следующее (из https://help.github.com/articles/dealing-with-line-endings/):

Удалить все файлы из индекса Git и.

git rm --cached -r .

Перепишите индекс Git, чтобы забрать все новые концы строк.

git reset --hard

НТН

+0

Это исправило это и для меня. Похоже, что плагин релиза maven имеет проблемы, если файл содержит концы строк CRLF. Впоследствии эти инструкции помогли: https://help.github.com/articles/dealing-with-line-endings/#refreshing-a-repository-after-changing-line-endings Как ни странно, сервер, этот дженкинс был работающие на распознанных намного более измененных файлах, чем установка git на машине разработки (все еще исследуя причину этого). Таким образом, мы, в конечном счете, должны были закончить нормализацию линии. – Christopher

 Смежные вопросы

  • Нет связанных вопросов^_^