`
hiwings
  • 浏览: 60089 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

Launching a compiled Java program

 
阅读更多

http://help.eclipse.org/indigo/index.jsp?topic=%2Forg.eclipse.jdt.doc.isv%2Fguide%2Fjdt_api_run.htm

 

http://camel-route-viewer.googlecode.com/svn-history/r136/trunk/src/com/googlecode/camelrouteviewer/launcher/CamelLaunchShortcut.java

 

 

Running a Java program

The JDT Debug component includes facilities for launching a Java program using the VM install that is currently configured by the user for a Java project.  

Launching a compiled Java program

Java programs that have been compiled in a Java project can be run by getting the appropriate IVMRunner for the Java project and running the class by name. The following code snippet shows how the class MyClass inside myJavaProject can be launched.

   IVMInstall vmInstall = JavaRuntime.getVMInstall(myJavaProject);
   if (vmInstall == null)
      vmInstall = JavaRuntime.getDefaultVMInstall();
   if (vmInstall != null) {
      IVMRunner vmRunner = vmInstall.getVMRunner(ILaunchManager.RUN_MODE);
      if (vmRunner != null) {
         String[] classPath = null;
         try {
            classPath = JavaRuntime.computeDefaultRuntimeClassPath(myJavaProject);
         } catch (CoreException e) { }
         if (classPath != null) {
            VMRunnerConfiguration vmConfig = 
               new VMRunnerConfiguration("MyClass", classPath);
            ILaunch launch = new Launch(null, ILaunchManager.RUN_MODE, null);
            vmRunner.run(vmConfig, launch, null);
         }
      }
   }

Another way to launch a Java program is to create a Java application launch configuration, and launch it. The following snippet shows how the class MyClassinside myJavaProject can be launched using a simple launch configuration. By default, the resulting running application uses the JRE and classpath associated with myJavaProject.

   ILaunchManager manager = DebugPlugin.getDefault().getLaunchManager();
   ILaunchConfigurationType type = manager.getLaunchConfigurationType(IJavaLaunchConfigurationConstants.ID_JAVA_APPLICATION);
   ILaunchConfigurationWorkingCopy wc = type.newInstance(null, "SampleConfig");
   wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_PROJECT_NAME, "myJavaProject");
   wc.setAttribute(IJavaLaunchConfigurationConstants.ATTR_MAIN_TYPE_NAME, "myClass");
   ILaunchConfiguration config = wc.doSave(); 
   config.launch(ILaunchManager.RUN_MODE, null);

分享到:
评论

相关推荐

    java 代理例子 -javaagent,premain方式实现

    Java代理是一种在运行时增强或拦截对象方法调用的技术,它可以让我们在不修改原有代码的情况下,为类添加新的功能或行为。在Java中,代理主要分为两种:静态代理和动态代理。静态代理是通过手动创建代理类来实现的,...

    电子商务英文课件:ch15 Launching a Successful Online Business.ppt

    电子商务英文课件:Launching a Successful Online Business.ppt 电子商务是指通过互联网进行商业活动的新型商业模式。Launching a Successful Online Business是电子商务的关键组成部分,涉及到在线业务的启动、...

    java 反编译工具 mac 版本 + eclipse 插件

    This program requires Java 1.8+Make sure you install the required Java version.” 可以进入安装的 JD-GUI.app, 右键显示包内容,进入 Contents,大家 info.plist, 找下 如果里面有 1.8+ ,改成 1.8 即可

    MicroBlaze常见问题汇总

    什么是软处理器?软处理器是使用现场可编程门阵列(FPGA)的逻辑原语实现的知识产权(IP)内核。其关键优势包括配置性,可以在价格和性能之间进行权衡,更快的上市时间,与FPGA制造的易于集成,以及避免过时。...

    An internal error occurred during: java.lang.NullPointerException

    在使用MyEclipse进行Java开发的过程中,可能会遇到一个常见的问题:“An internal error occurred during: 'Calculating completion proposals...'”。这个错误通常伴随着`java.lang.NullPointerException`异常,...

    Java Service Wrapper64位破解

    去CSDN下载所谓破解出现以下错误:wrapper | Licensed to (null) for (null) wrapper | wrapper | Launching a JVM... jvm 1 | WrapperManager: Initializing... jvm 1 | WrapperJNI Error: Not licensed to use ...

    java实现摄像头拍照

    通过在JNLP(Java Network Launching Protocol)文件中声明必要的权限,用户可以授权Web应用使用摄像头。 5. **权限管理** 在实现摄像头拍照功能时,必须考虑用户的隐私和安全。因此,无论是在桌面应用还是Web应用...

    jclazz-1.2.2

    * Decompiler can be used to reproduce Java source code from compiled Java class file. It uses debug information to produce Java code which is nearly the same as original source file. Nevertheless...

    将Java程序作成exe文件的N种方法

    尽管JAR文件不能直接作为.exe运行,但通过配置JNLP(Java Network Launching Protocol)文件,用户可以在安装Java运行时环境的情况下,像.exe一样启动Java应用。 2. **Java to EXE Converters**: 存在一些工具,如...

    The Launching Framework in Eclipse

    Eclipse SDK自带了一系列实用的启动器,用于启动本地Java应用程序和Java小应用程序,连接远程Java应用程序,启动JUnit测试套件以及启动Eclipse工作台。然而,如果这些启动器不能满足需求,且找不到其他人编写的插件...

    Java做的浏览器小程序

    它使用`jnlp`(Java Network Launching Protocol)文件来描述应用程序的资源和依赖项。JWS提供了“一次点击,永远更新”的功能,使得用户可以轻松获取最新版本的应用。但是,随着浏览器厂商逐步弃用NPAPI插件,JWS也...

    Java2平台安全技术-结构,API设计和实现

    `javaws`命令行工具则用于运行JNLP(Java Network Launching Protocol)应用,同样涉及安全控制。 12. **反射和权限** Java的反射API允许在运行时动态地访问类和对象。但为了安全,反射操作通常需要额外的权限,...

    Java Development Tooling Developer Guide

    利用 `org.eclipse.jdt.launching` 包中的 API,可以在 Eclipse 环境下启动 Java 应用程序。这不仅限于运行简单的 Java 应用,还可以配置复杂的启动参数。 ##### 2.5 操作 JDT Core 选项 通过 `org.eclipse.jdt....

    利用 Java Web Start发布你用java程序

    Java Web Start 使用 JNLP(Java Network Launching Protocol)来下载和启动应用程序。JNLP 文件是 XML 格式,包含了应用程序所需的资源信息,如主类、库、图标以及权限等。当用户点击 JNLP 链接时,Java Web Start ...

    java深度历险(繁体)

    使用Visual Studio .NET来操控Java虚拟机,是通过JNLP(Java Network Launching Protocol)和JDBC(Java Database Connectivity)等技术实现的。开发者可以利用这些工具在.NET环境中调用Java代码,实现跨平台的互...

    java web start教程

    开发JWS应用的一个关键组件是Java Network Launching Protocol (JNLP)。JNLP是一种XML格式的文件,它定义了应用程序的资源、类路径、权限需求以及其他运行时设置。开发者需要编写JNLP文件来描述他们的应用程序,然后...

Global site tag (gtag.js) - Google Analytics