Назад | Перейти на главную страницу

maven + cruisecontrol - медленные сборки

Я запускаю cruisecontrol с maven для создания Scala-проекта.

Когда я запускаю пакет mvn вне cruisecontrol, сборка занимает менее 10 секунд, но когда я вызываю сборку из cruisecontrol, этап компиляции занимает около 300 секунд. Я ищу подсказки и подсказки о том, как ускорить компиляцию с помощью maven.

Я заметил одну вещь: CruiseControl продолжает получать сообщение об ошибке: не удалось подключиться к экземпляру панели инструментов: http: // локальный: 8080 / приборная панель / buildloop / слушатель Либо приборная панель не запустилась, либо возникла проблема с сетью.

Когда я погуглил проблему, я увидел, что это часто бывает, если у вас нет в вашей конфигурации, но поскольку у меня есть этот, я озадачен этой ошибкой.

Мой config.xml выглядит примерно так:

<cruisecontrol>
        <project
                name="XXX" 
                buildafterfailed="false">
                <modificationset
                        quietperiod="30">
                        <svn 
                                LocalWorkingCopy="XXX"
                                username="XXX"
                                password="XXX" />
                </modificationset>
                <listeners></listeners>
                <bootstrappers>
                        <svnbootstrapper
                                localWorkingCopy="XXX"
                                username="XXX"
                                password="XXX" />
                </bootstrappers>
                <schedule 
                        interval="20">
                        <maven2
                                mvnhome="/opt/maven"
                                goal="clean package"
                                pomfile="XXX/XXX/checkout/trunk/pom.xml" />

                </schedule>
                <log dir="logs/remote-control-api-trunk">
                        <merge 
                                dir="XXX/XXX/checkout/trunk/target/surefire-reports/"
                                pattern="TEST-*.xml" />
                </log>
                <publishers>
                        <onsuccess>
                                <artifactspublisher
                                        file="/XXX/XXX/checkout/trunk/target/XXX.war"
                                        dest="/XXX/cruisecontrol/artifacts"
                                        />
                        </onsuccess>
                </publishers>
        </project>
</cruisecontrol>

config.xml делается clean package в то время как вы упомянули, что делаете просто mvn package вне круиз-контроля. Попробуйте бежать mvn clean package.

Некоторые другие вещи, которые вы можете захотеть проверить:

  1. Версии Maven, используемые круиз-контролем и командной строкой, одинаковы?
  2. Maven super-pom / профили активны в обоих вызовах