2017-05-08 1 views
0

どのようにしてIPathをURLに変換できますか?私の場合は、Javaプロジェクトの出力場所をURLに変換して、URLClassLoaderでそこからクラスを読み込むことができます。Eclipse - IPathをURLに変換する

javaProject.getProject().build(IncrementalProjectBuilder.FULL_BUILD, null); 

URL url = new File(javaProject.getOutputLocation().toFile().getAbsolutePath()).toURI().toURL(); 
URL[] urls = new URL[] { url }; 
URLClassLoader classLoader = new URLClassLoader(urls); 
Class<?> c = classLoader.loadClass(fully-qualified-class-name); 

問題は、その文字列表現がfile:/C:/com.florianingerl.regexfindandreplace.matchevaluators/bin、すなわちURLは、唯一の相対的なものであることですが、それはfile:/C:/Users/Hermann/runtime-EclipseApplication/com.florianingerl.regexfindandreplace.matchevaluators/bin

URLClassLoaderクラスを見つけることができないようなものでなければなりません:私のコードは次のようになります明らかに。

何か助けていただければ幸いです。

答えて

0

あなたが好きなものを使用することができます。

IPath path = javaProject.getOutputLocation(); 

IFile file = ResourcesPlugin.getWorkspace().getRoot().getFile(path); 

URI uri = file.getLocationURI(); 

URL url = uri.toURL(); 
関連する問題