Сборка Jenkins не удалась: пакет org.eclipse.swt не существует - PullRequest
0 голосов
/ 24 октября 2019

Я пытаюсь создать продукт RCP в Jenkins с конфигурацией: maven: 3.0.5 и Java 1.7. Он строится локально, но завершается неудачно со следующей ошибкой в ​​Jenkins.

 Started calculate disk usage of build
 Finished Calculation of disk usage of build in 0 seconds
 Started calculate disk usage of workspace
 Finished Calculation of disk usage of workspace in 0 seconds
 [INFO] [1m------------------------------------------------------------------------[m
 [INFO] [1;31mBUILD FAILURE[m
 [INFO] [1m------------------------------------------------------------------------[m
 [INFO] Total time: 7.360 s
 [INFO] Finished at: 2019-10-24T13:55:12-05:00
 [INFO] [1m------------------------------------------------------------------------[m
 Waiting for Jenkins to finish collecting data
 [ERROR] Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.1:compile (default-compile) on project myrcp-app: Compilation failure: Compilation failure:
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[8,23] package org.eclipse.swt does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[9,30] package org.eclipse.swt.events does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[10,30] package org.eclipse.swt.events does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[11,32] package org.eclipse.swt.graphics does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[12,30] package org.eclipse.swt.layout does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[13,30] package org.eclipse.swt.layout does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/com/company/myrcp/app/internal/handlers/AboutHandler.java:[14,30] package org.eclipse.swt.layout does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[15,31] package org.eclipse.swt.widgets does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[16,31] package org.eclipse.swt.widgets does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[17,31] package org.eclipse.swt.widgets does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[18,31] package org.eclipse.swt.widgets does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[19,31] package org.eclipse.swt.widgets does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[20,31] package org.eclipse.swt.widgets does not exist
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/internal/handlers/AboutHandler.java:[45,39] cannot find symbol
 [ERROR] symbol:   class Dialog
 [ERROR] location: class com.company.myrcp.app.internal.handlers.AboutHandler
 [ERROR] /c:/jenkins/workspace/myrcp-app/src/main/java/com/company/myrcp/app/nternal/handlers/AboutHandler.java:[47,34] cannot find symbol
 [ERROR] symbol:   class Shell
 [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] 

В POM также присутствует следующая зависимость:

        <dependency>
          <groupId>org.eclipse.swt</groupId>
          <artifactId>org.eclipse.swt</artifactId>
          <scope>compile</scope>
        </dependency>

Не уверен, нужно ли добавлять какие-либо плагины взаставить его работать в Дженкинсе?

1 Ответ

0 голосов
/ 24 октября 2019

Если вы используете maven, вы указываете версию. После того, как вы успешно встроили локальную версию, вы можете исследовать все доступные зависимости. Если вы попытаетесь запустить в eclipse внутренне, eclipse поймете зависимость и поможет вашей сборке в локальной системе.

К счастью, если вы запускаете Jenkins на другом компьютере для сборки кода из репозитория, вам нужно указать версию, и maven загрузит зависимость и получит ее сборку.

Эту проблему можно устранить, если поддерживать внутреннее удаленное хранилище. Если у вас есть внутреннее репо, рассмотрите возможность проверки доступности репо.

...