따라서 기본 메서드를 작성하지 않고 명령 줄 Spring 앱을 초기화하고 시작할 수있는 방법이 있습니다. 이러한 모든 주요 방법이 동일한 형태를 갖는 것 같습니다.
public static void main(final String[] args) throws Exception {
ApplicationContext applicationContext = new ClassPathXmlApplicationContext("applicationContext.xml", Boot.class);
SomeService someService = (SomeService) applicationContext.getBean("someService");
someService.bar();
}
복잡하지 않다고 생각하지만 누군가가 명령 줄 또는 매니페스트 파일에서 context.xml을 지정하는 방법을 제공하는 방법을 찾았습니까?
여기서 목표는 실행 가능한 jar로 스프링 애플리케이션의 생성을 단순화하는 것입니다. 매니페스트에서 일부 유틸리티 클래스를 Main-Class로 지정할 수 있기를 바랍니다. 또한 앱의 시작점, Bean 및 프로세스를 시작하는 메서드를 지정해야한다고 가정합니다.
<project>
<modelVersion>4.0.0</modelVersion>
<groupId>com.stackoverflow</groupId>
<artifactId>stackoverflow-autostart-spring-app</artifactId>
<version>0.1</version>
<dependencies>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring</artifactId>
<version>2.5.2</version>
</dependency>
</dependencies>
<build>
<plugins>
<plugin>
<artifactId>maven-jar-plugin</artifactId>
<configuration>
<archive>
<manifest>
<mainClass>com.stackoverflow.spring.autostart.Autostart</mainClass>
</manifest>
</archive>
</configuration>
</plugin>
<plugin>
<groupId>org.apache.maven.plugins</groupId>
<artifactId>maven-shade-plugin</artifactId>
<executions>
<execution>
<phase>package</phase>
<goals>
<goal>shade</goal>
</goals>
</execution>
</executions>
</plugin>
</plugins>
</build>
</project>
랜덤의 수의 xml 및 속성 파일을 arguments.java -cp myapp.jar util.SpringMain context.xml로 사용하는 간단한 SpringMain을 작성합니다. 신청