从 eclipse-plugin 访问相对路径
有谁知道如何从自制的Eclipse插件中获取带有uri的文件?
绝对路径没问题:
URI.createFileURI("C:/Users/hp/workspace(dke)/SMartGen/StarSchema.profile.uml");
但是如何相对访问本地资源呢?
URI.createFileURI("jar:file:/%ECLIPSE_HOME%/plugins/SMartGen.jar!StarSchema.profile.uml");
这样不行……
对每个答案都很高兴。
LG马丁
Does anyone know how to get a file with uri from a self-made Eclipse Plug-in?
Absolute paths would be no problem:
URI.createFileURI("C:/Users/hp/workspace(dke)/SMartGen/StarSchema.profile.uml");
But how do I access local resources relatively?
URI.createFileURI("jar:file:/%ECLIPSE_HOME%/plugins/SMartGen.jar!StarSchema.profile.uml");
doesn't work this way....
Happy for every answer.
lg martin
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
使用 FileLocator。
示例:
这将获取位于捆绑包“myBundle”中“icons”文件夹中的文件“someIcon.png”的 URL 。
Use the FileLocator.
Example:
This will get the URL of a file "someIcon.png" that is located in the "icons" folder in the bundle "myBundle".
要从 Eclipse 中获取资源,您可以使用 org.osgi.framework.Bundle.getEntry(String)。它返回一个标准的 java.net.URL,它也可用于获取用于使用的 InputStream。它的优点是不关心你的插件是目录形式、jar 形式还是在你的工作空间中。
URL 也有一个方便的
toURI()
方法。For getting a resource out of eclipse, you can use
org.osgi.framework.Bundle.getEntry(String)
. That returns a standardjava.net.URL
, which can also be used to get theInputStream
for consumption. It has the advantage of not caring if your plugin is in directory form, jar form, or in your workspace.URL has a handy
toURI()
method as well.