Как запустить Cucumber Spring Boot Packaged Jar из командной строки?

Я новичок в мире огурца-jvm. Пытаюсь упаковать приложение весенней загрузки огурца как Jar. приложение отлично работает с Eclipse. Но когда я упаковываю как исполняемую банку, она не работает с исключением:

Исключение в основном потоке, серверный модуль не найден. Убедитесь, что у вас есть серверный модуль на CLASSPATH. Пожалуйста, помогите. Спасибо.


comment
У вас есть банки, такие как cucumber-java, cucumber-core и т. Д. В пути к классам? Эта ошибка возникает, когда реализация Backend.java не найдена в пакете cucumber.runtime. См. Строку 56 в- github.com/cucumber/cucumber-jvm/blob/v2.4.0/core/src/main/java/   -  person Grasshopper    schedule 10.05.2018
comment
Да, у меня есть cucumber-java, cucumber-core 1.2.5 в пути к классам. И я вижу класс JavaBackend в пакете cucumber.runtime.   -  person shah    schedule 10.05.2018


Ответы (2)



Используя Gradle, поместите артефакты Cucumber (т.е. функции, реализации шагов и т. Д.) В подпроект, например my-cucumber-tests, отдельно от приложения Spring Boot.

Затем в build.gradle приложения Spring Boot добавьте:

bootJar {
  // make backend, features, and steps available to Cucumber at runtime
  requiresUnpack '**/my-cucumber-tests-*.jar', '**/cucumber-java-*.jar'
}
person Noel Yap    schedule 31.08.2019
comment
Не могли бы вы уточнить? Что именно входит в этот подпроект, а что остается в основном проекте? - person Saita; 19.09.2019
comment
Подпроект my-cucumber-tests содержит функции Cucumber, реализации шагов и т. Д. В идеале проект main (хотя мы еще не достигли идеала) содержит функцию main и все остальное, что связано с сервером. В идеале существует разделение задач: один подпроект - это код, связанный с сервером, а другой подпроект - код, связанный с огурцом. - person Noel Yap; 20.09.2019