【发布时间】:2020-06-30 05:18:35
【问题描述】:
我是 springboot 新手,正在使用 springboot 2 版本。
我想在命令提示符下使用 java -jar my-app-0.0.1-SNAPSHOT.jar 运行我的 Spring Boot 应用程序。
但是,当我使用 eclipse 构建应用程序时,它会直接调用 myService.getMyMethod() 而不会构建 jar。
我想先构建 jar 文件,然后从命令提示符处运行 java -jar my-app-0.0.1-SNAPSHOT.jar,这将调用 myService.getMyMethod()
我在 pom.xml 中已经有了 spring-boot-maven-plugin,运行 mvn package / mvn install 会启动应用程序但不会在目标中生成 jar 文件文件夹。 mvn clean package 也不起作用,MyApplication 正在使用实现 CommandLineRunner 并开始在构建时调用该方法,因此不会生成构建 jar 文件
我的主要课程:
@SpringBootApplication
public class MyApplication implements CommandLineRunner {
private static String URL = "ws://localhost:8080/spring-mvc-java/chat";
@Autowired
private MyService myService;
public static void main(String[] args) {
SpringApplication.run(MyApplication.class, args);
}
@Override
public void run(String... args) throws Exception {
myService.getMyMethod(URL);
}
}
我的服务等级:
@Service
public class MyServiceImpl implements MyService {
public void getMyMethod(String URL){
WebSocketClient client = new StandardWebSocketClient();
WebSocketStompClient stompClient = new WebSocketStompClient(client);
stompClient.setMessageConverter(new MappingJackson2MessageConverter());
StompSessionHandler sessionHandler = new MyStompSessionHandler();
stompClient.connect(URL, sessionHandler);
new Scanner(System.in).nextLine(); // Don't close immediately.
}
}
【问题讨论】:
-
您是否将
spring-boot-maven-plugin添加到您的pom.xml以创建正确的jar? -
是的。更新了帖子
-
如果
mvn package没有生成 jar,而是启动了应用程序,您可能有一个测试阻止了进程。 -
@M.Deinum 请找到上面更新的代码
-
您的服务正在阻塞,因此阻止了测试完成,因此 maven 无法生成 jar。
标签: java spring-boot pom.xml spring-websocket spring-boot-maven-plugin