熟悉Eclipse的哥们会发现,在Eclipse的Run Application ...的Arguments页的VM arguments设置classpath和Djava.class.path是无效的,可能eclipse就是不让我们修过这个参数....
如果建的工程是分开source和classes,则eclipse自动将classpath设置到classes这个目录下
在main里面加入下面的代码就能看到jvm运行的属性:
System.getProperties().list(System.out);
我的classes设置在bin目录下
java.class.path=D:\Code\SwingWorkspace\JavaXYQ\bin;D:...
程序运行后的根目录就是classes了,如果要读取资源文件,则资源文件也必须在classes下。因为eclipse会自动将src目录下的资源复制到classes下,所以一般将资源文件放在src下就行。
如果程序有比较多的资源就比较不爽,占用的空间多了一倍。每次更新资源,都要刷新,同步过去,很麻烦!
被这个问题困扰了很久,经过x次尝试,终于发现了有个窍门,可以满足我的需要。
Run->Java Application->Classpath这个页面原来可以添加系统目录的,真是太好了。
点右侧的Advanced..,弹出Advanced Options,选中Folder
再次弹出Folder Selection,选中工程的根目录,我的资源就放在那啦。
添加后,多了一个项目,此时运行程序就可以正确读取工程根目录下的资源了
希望对你有帮助啦。