在 Eclipse IDE 环境之外执行 Eclipse 插件 (jdt/ast)

2024-04-03

我可以执行吗Eclipse Java 开发工具 http://www.eclipse.org/jdt/作为一个独立的进程?我需要获取 Java 程序AST http://www.vogella.com/articles/EclipseJDT/article.html使用另一个程序中的 Eclipse JDT 进行结构,为此,我需要在后台将 eclipse 插件作为独立进程执行。

那可能吗?如果是这样,如何才能做到这一点?


Eclipse/jdt 和 eclipse/ast 只不过是一个 jar 文件,因此可以使用它们来构建独立的 java 应用程序。

Example

我用谷歌搜索找到AST 浏览器 http://www.ibm.com/developerworks/opensource/library/os-ast/作为将 eclipse/ast 插件制作为独立 java 项目的示例。

该程序的目标是相当旧的 eclipse (3.0.2),我下载了3.0.2 http://archive.eclipse.org/eclipse/downloads/drops/R-3.0.2-200503110845/对于 Mac OS X,此站点 -http://archive.eclipse.org/eclipse/downloads/drops/R-3.0.2-200503110845/ http://archive.eclipse.org/eclipse/downloads/drops/R-3.0.2-200503110845/

  1. You need to setup ECLIPSE_HOME classpath variables in Preference -> Java -> Classpath variables enter image description here
  2. .classpath 已经有了这些类路径变量,你可以参考这篇文章 -.classpath 内容在 eclipse 中更新 https://stackoverflow.com/questions/12570286/classpath-contents-update-in-eclipse。正如您所看到的,它指的是 eclipse/jdt(art) jar 文件。我非常确定无需下载 3.0.2 版本即可更改对最新版本 jdt/ast 的引用。
  3. As I use Mac, I need to replace the swt for PC with swt for Mac. I could do that in BuildPath/Configure Build path enter image description here enter image description here
    1. 首先删除PC swt引用。
    2. 然后添加正确的 Mac swt 引用。

在 mac 上使用 eclipse indigo/ 编译示例

When the setup is correct, eclipse starts building the project. You can use Project -> Build Project menu. Then, you can check the application works fine in eclipse. enter image description here

生成可执行jar

  1. Export to executable jar file. enter image description here enter image description here enter image description here
  2. 您会收到一些警告,但您将拥有一个 jar 文件。

执行生成的jar

刚刚执行java -jar ast.jar在 Mac 上不起作用,我从这篇文章中得到了提示。在 Mac 上正确运行基于 SWT 的跨平台 jar https://stackoverflow.com/questions/3976342/running-swt-based-cross-platform-jar-properly-on-a-mac

简而言之,你需要运行java -XstartOnFirstThread -jar ast.jar

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在 Eclipse IDE 环境之外执行 Eclipse 插件 (jdt/ast) 的相关文章

  • 从 BroadcastReceiver 获取方法来更新 UI

    我正在尝试根据变量的变化更新用户界面BroadcastReceiver 因此 我需要调用一个扩展类的方法 以获取我提到的变量 BroadcastReceiver in MainActivity取决于但我无法以任何方式获得真正的返回值 扩展的
  • Java HashMap 嵌套泛型与通配符

    我正在尝试创建包含自定义类的不同子类的哈希集的哈希映射值的哈希映射 如下所示 HashMap
  • 为什么Java中的文件名与公共类名相同? [关闭]

    Closed 这个问题是基于意见的 help closed questions 目前不接受答案 在Java中 文件名应该与文件名相同public class包含在该文件中 为什么这是一个限制 它有什么目的 Java 有一个有趣的方法 如果给
  • Apache Commons VFS - 无法解析文件

    VFS 方法无法处理此 URI jboss server temp dir local outgoing配置在jboss beans xml这是决心 C Download jboss eap 5 1 1 server default tmp
  • 为什么我的 @OneToMany 属性出现主键违规?

    我有一个实体 Entity public class Student GeneratedValue strategy GenerationType AUTO Id private long id OneToMany private Set
  • Ctrl + Space 不适用于 Eclipse 上的内容辅助

    我的问题是点击后不会弹出内容辅助窗口Ctrl Space 我检查了我的快捷方式 内容辅助必然会Ctrl Space 有时 例如在输入点后 窗口会自动弹出提出建议 但使用组合键时不会发生这种情况 日食版本 面向 Web 开发人员的 Eclip
  • 外部实体更改后索引不更新

    我目前正在开发一个项目 使用 JPA 2 1 保存数据并使用 hibernate search 4 5 0 final 搜索实体 映射类和索引后 搜索工作正常 但是 当我更改值时描述B 类从 someStr 到 anotherStr 数据库
  • 为本地@ExceptionHandler编写JUnit测试

    我有以下控制器 class Controller ResponseStatus HttpStatus OK RequestMapping value verifyCert method RequestMethod GET public vo
  • 生产者程序中的 kafka 网络处理器错误(ArrayIndexOutOfBoundsException:18)

    我有下面的 kafka Producer Api 程序 我对 kafka 本身是新手 下面的代码从 API 之一获取数据并将消息发送到 kafka 主题 package kafka Demo import java util Propert
  • 使用java在网页中进行字符编码

    如何使用java找出网页中的字符编码类型 打开与 URL 的连接 使用URL openConnection http download oracle com javase 6 docs api java net URL html openC
  • 如何将测试类打包到jar中而不运行它们?

    我正在努力将我的测试类包含到 jar 包中 但不运行它们 经过一番谷歌搜索后 我尝试过mvn package DskipTests 但我的测试类根本没有添加到 jar 中 有任何想法吗 如果您遵循 Maven 约定 那么您的测试类位于src
  • 按名称获取 ArrayList

    这是正确的获取方式吗ArrayList
  • Java 常量枚举[重复]

    这个问题在这里已经有答案了 可能的重复 理解 Java 中的枚举 https stackoverflow com questions 1419835 understanding enums in java 为什么我们应该使用枚举而不是 Ja
  • 应用程序中空指针异常[重复]

    这个问题在这里已经有答案了 我正在尝试在我的应用程序中实施应用程序内计费 我写了这段代码 public class Settings extends PreferenceFragment ServiceConnection mService
  • 线程上下文类加载器和普通类加载器的区别

    线程的上下文类加载器和普通类加载器有什么区别 也就是说 如果Thread currentThread getContextClassLoader and getClass getClassLoader 返回不同的类加载器对象 将使用哪一个
  • 动态创建 JSON 对象

    我正在尝试使用以下格式创建 JSON 对象 tableID 1 price 53 payment cash quantity 3 products ID 1 quantity 1 ID 3 quantity 2 我知道如何使用 JSONOb
  • 测量 tomcat 的排队请求数

    因此 使用tomcat 您可以设置acceptCount值 默认为100 这意味着当所有工作线程都忙时 新连接被放置在队列中 直到队列满 之后它们被拒绝 我想要的是监视此队列中项目的大小 但无法确定是否有办法通过 JMX 获取此值 即不是队
  • 内部类的访问修饰符[重复]

    这个问题在这里已经有答案了 可能的重复 受保护 公共内部类 https stackoverflow com questions 595179 protected public inner classes 我确信这个问题已经被问过 但我找不到
  • 一个类中有多个具有相同参数类型的方法

    我知道 至少已经有了关于这个主题的一个问题 https stackoverflow com questions 5561436 can two java methods have same name with different retur
  • Swing:创建可拖动组件...?

    我在网上搜索了可拖动 Swing 组件的示例 但我发现示例不完整或不起作用 我需要的是一个摇摆组件那可以是dragged通过鼠标 在另一个组件内 被拖拽的时候 应该已经 改变它的位置 而不仅仅是 跳 到目的地 我很欣赏无需非标准 API 即

随机推荐