package com.galaxis.soap; import com.galaxis.soap.wms.WMSServiceImpl; import lombok.SneakyThrows; import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.context.ApplicationContext; import javax.xml.ws.Endpoint; import java.util.concurrent.atomic.AtomicBoolean; @SpringBootApplication @Slf4j public class StartSoap { private static final AtomicBoolean running = new AtomicBoolean(true); @SneakyThrows public static void main(String[] args) { String wsUrl = "http://0.0.0.0:9000/wms/api"; Endpoint.publish(wsUrl, new WMSServiceImpl()); ApplicationContext ctx = SpringApplication.run(StartSoap.class, args); log.info("### 服务启动完成 === " + ctx); Runtime.getRuntime().addShutdownHook(new Thread(() -> running.set(false))); while (running.get()) { Thread.yield(); } log.info("停止服务"); } }