2

问题

给定一个我作为插件/扩展编写的类路径容器,如何自动将它添加到类路径中?

背景

好的,所以我是一位经验丰富的 Java 开发人员,但对编写 Eclipse 插件非常陌生。几天来,我一直在谷歌搜索、关注教程并阅读其他插件的源代码。我确切地知道我想做什么,但不确切地知道如何去做。

现在,在 Eclipse 中,当我单击资源并选择“Run as JUnit test”时,如下所示:


由于某种原因,我的照片不再工作了。 我会尽快解决这个问题...


在幕后,m2eclipse 插件以某种方式生成包含“Maven Dependencies”类路径容器的运行配置,如下所示:

替代文字

我最好的猜测是“Maven Dependencies”类路径容器是通过 M2Eclipse 插件使用的一些扩展点添加的。同样,我想在用户运行 JUnit 测试时自动添加我的类路径容器——因此它显示在“用户条目”下。我可以使用哪些扩展点来实现类似的事情?我一直在查看org.eclipse.jdt.core.classpathContainerInitializer但我不确定这是否能满足我的需要。


理想结果

理想情况下,我想编写一个插件,它将项目构建路径中的每个条目添加到运行配置的类路径中(每当通过以下方式创建新的启动配置时:Run As > JUnit test)。这应该是 Eclipse 的默认行为,但它不是!

我的下一个最佳解决方案是简单地将我的自定义类路径容器自动添加到运行配置的构建路径中。归根结底,我只想要一个用于我们团队运行/启动的任何 java 代码的类路径。这不应该这么难!

任何有关如何实现这一切的建议将不胜感激!甚至是关于在哪里查看以了解如何使用特定扩展点的基本指针(基本的 JavaDocs API 很糟糕)。谢谢,

4

2 回答 2

1

Roostergx 提供了部分答案(即,如何创建类路径容器)。正如您所承认的,第二部分是如何自动添加它。

我建议使用名为 org.eclipse.ui.startup 的扩展点。这使您可以在 Eclipse 启动时尽可能早地(几乎)贡献代码。在每次启动时,您都可以遍历所有项目并查看是否有任何现有项目需要您创建的类路径容器。

于 2011-04-08T15:07:35.410 回答
0

http://www.ibm.com/developerworks/opensource/tutorials/os-eclipse-classpath/index.html上的文章为定义项目特定类路径容器的插件提供了出色的描述和源代码,该容器包含所有 jar 文件在指定的目录中。

于 2011-01-03T15:08:20.030 回答