初めて Eclipse で実行するように Spring アプリケーションをセットアップしようとしています。スタンドアロンの Java アプリケーションとして実行しています。アプリはエラーなしでビルドされますが、実行しようとすると、次のスタック トレースで ClassNotFoundException が発生します。
DataLoadService [Java Application]
com.pikefin.services.DataLoadService at localhost:52871
Thread [main] (Suspended (exception ClassNotFoundException))
URLClassLoader$1.run() line: 217
AccessController.doPrivileged(PrivilegedExceptionAction<T>, AccessControlContext) line: not available [native method]
Launcher$AppClassLoader(URLClassLoader).findClass(String) line: 205
Launcher$AppClassLoader(ClassLoader).loadClass(String, boolean) line: 321
Launcher$AppClassLoader.loadClass(String, boolean) line: 294
Launcher$AppClassLoader(ClassLoader).loadClass(String) line: 266
ClassPathXmlApplicationContext(AbstractApplicationContext).<init>(ApplicationContext) line: 161
ClassPathXmlApplicationContext(AbstractRefreshableApplicationContext).<init>(ApplicationContext) line: 90
ClassPathXmlApplicationContext(AbstractRefreshableConfigApplicationContext).<init>(ApplicationContext) line: 59
ClassPathXmlApplicationContext(AbstractXmlApplicationContext).<init>(ApplicationContext) line: 61
ClassPathXmlApplicationContext.<init>(String[], boolean, ApplicationContext) line: 136
ClassPathXmlApplicationContext.<init>(String) line: 83
DataLoadService.main(String[]) line: 20
/usr/lib/jvm/java-1.6.0-openjdk-1.6.0.0.x86_64/bin/java (Nov 6, 2012 1:14:23 PM)
次のコード行で発生しています。
ApplicationContext context=new ClassPathXmlApplicationContext("classpath:spring.xml");
spring.xml はビルド プロセス中に class/ フォルダーに移動されるため、class フォルダーを起動構成に追加してみました (スクリーンショットを参照)。
私はEclipse 3.7.2とSpring 3.1.1で作業しています