Я работаю над проектом в Spring boot, используя maven. Прежде всего позвольте мне сказать вам, что в intellij все работает отлично, и я могу открыть веб-сайт, НО: Теперь мне нужно создать тестовую среду, поэтому я создал Jar с помощью maven. Я выбрал правильный профиль пружины, и теперь я запускаю банку с помощью этой команды в командной строке:
java -jar .\pegusapps-dashboard-0.4.0-SNAPSHOT.jar --spring.profiles.active=ext-api-dev,dev
Когда я запускаю это, весенняя загрузка запускается и начинает делать обычные вещи, как в intellij, но когда они компилируют часть, в которой мы используем rest api. Это дает мне эту ошибку:
Description:
Parameter 0 of constructor in com.pegusapps.dashboard.integration.tempo.TempoServiceImpl required a bean of type 'com.pegusapps.dashboard.integration.tempo.TempoRestApi' that could not be found.
Action:
Consider defining a bean of type 'com.pegusapps.dashboard.integration.tempo.TempoRestApi' in your configuration.
Позвольте мне объяснить структуру api. (это jira rest api)
Внутри реализации службы мы автоматически подключаем первый интерфейс в конструкторе, и именно отсюда возникает ошибка (из окна cmd).
Заранее спасибо !
@krizajb запускает очень длинную команду, и что я могу сделать из нее, так это то, что она добавляет все зависимости в командную строку.
Похоже, вы не создаете банку с помощью spring-boot-maven-plugin. Этот плагин создает толстую банку со всеми зависимостями.
@cool, это действительно ответ, я нашел это в Интернете и сейчас попробую.




Вы можете попробовать создать свой JAR с помощью Плагин Apache Maven Shade, как показано ниже.
<build>
<plugins>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<addClasspath>true</addClasspath>
<mainClass>fully.qualified.MainClass</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<artifactId>maven-assembly-plugin</artifactId>
<configuration>
<descriptorRefs>
<descriptorRef>jar-with-dependencies</descriptorRef>
</descriptorRefs>
</configuration>
</plugin>
</plugins>
</build>
Если вы еще не используете, используйте следующие
<build>
<plugins>
<plugin>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-maven-plugin</artifactId>
<version>2.0.0.RELEASE</version>
<executions>
<execution>
<goals>
<goal>repackage</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
Вы проверили, какую команду выполняет intellij-idea при запуске jar? Он должен быть поверх вывода консоли.