【发布时间】:2013-10-10 18:40:13
【问题描述】:
我编写了一个 Eclipse 插件,它可以在任何文件或文件夹(例如,在导航器视图中)显示右键菜单选项。对于选定的每个文件(以及选定目录中的每个文件),插件都会计算并显示文件的 MD5、SHA-1、SHA-256、SHA-384 或 SHA-512 哈希值。当我在开发时进行调试时,该插件可以完美运行。
如果我使用 site.xml 创建站点,将其放在我的服务器上,然后安装到 Eclipse(它安装得很好),我会看到菜单。我可以计算并显示选定文件的哈希值,但它对于选定的文件夹不起作用。代码中绝对没有任何变化。它总是在调试模式下工作,而我安装它时它永远不会工作。
我的问题是:我该如何调试它?起初,我以为 Eclipse 的 workspace/.metadata/.log 文件会提供一些线索,但没有输出错误。我什至尝试添加一些将文件写入桌面的代码,但该文件永远不会被创建。有没有人知道发生了什么或我应该如何解决这个问题?我以前从来没有调试过这么难的!
作为参考,https://github.com/gfairchild/eclipse-hasher 是项目。所有源代码都可以在那里查看(可以作为 Eclipse 项目导入)。
答案最终涉及两件事:
- 在构建过程中我没有包含
lib目录。我使用的依赖项(Apache Commons Codec)不包括在内,所以它当然不会运行。 - 在测试过程中,我尝试手动将 Hasher 的构建放入 eclipse/plugins 中。我错误地假设如果我通过 Eclipse 界面卸载 Hasher,该文件将被删除。不是。所以在上个月,我有一个旧版本的 Hasher 被加载到 Eclipse 中。这令人难以置信的沮丧。那好吧。经验教训。
非常感谢所有提供帮助的人!
【问题讨论】:
-
我刚刚在 Eclipse Kepler 上测试了您的项目,它工作正常(无论是在 IDE 中还是在导出时)。顺便说一句,您的项目缺少 MANIFEST.MF(需要运行/导出)。
标签: java eclipse eclipse-plugin