⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 javaemulatordevice.java

📁 eclipseme的最新版本的source,欢迎j2me程序员使用
💻 JAVA
字号:
/**
 * Copyright (c) 2003-2007 Craig Setera
 * All Rights Reserved.
 * Licensed under the Eclipse Public License - v 1.0
 * For more information see http://www.eclipse.org/legal/epl-v10.html
 */
package eclipseme.core.model.impl;

import java.io.File;

import org.eclipse.jdt.launching.IVMInstall;
import org.eclipse.jdt.launching.JavaRuntime;

/**
 * An abstract superclass that can be used to help implement an
 * emulator that is launched via Java.
 * <p />
 * Copyright (c) 2003-2007 Craig Setera<br>
 * All Rights Reserved.<br>
 * Licensed under the Eclipse Public License - v 1.0<p/>
 * <br>
 * $Revision$
 * <br>
 * $Date$
 * <br>
 * @author Craig Setera
 */
public abstract class JavaEmulatorDevice extends AbstractDevice {
	/**
	 * The list of locations in which to look for the java executable in candidate
	 * VM install locations, relative to the VM install location.
	 */
	private static final String[] CANDIDATE_JAVA_LOCATIONS = {
		"bin" + File.separatorChar + "javaw",                                //$NON-NLS-2$ //$NON-NLS-1$
		"bin" + File.separatorChar + "javaw.exe",                            //$NON-NLS-2$ //$NON-NLS-1$
		"jre" + File.separatorChar + "bin" + File.separatorChar + "javaw",          //$NON-NLS-3$ //$NON-NLS-2$ //$NON-NLS-1$
		"jre" + File.separatorChar + "bin" + File.separatorChar + "javaw.exe",      //$NON-NLS-3$ //$NON-NLS-2$ //$NON-NLS-1$									
		"bin" + File.separatorChar + "java",                                 //$NON-NLS-2$ //$NON-NLS-1$
		"bin" + File.separatorChar + "java.exe",                             //$NON-NLS-2$ //$NON-NLS-1$
		"jre" + File.separatorChar + "bin" + File.separatorChar + "java",           //$NON-NLS-3$ //$NON-NLS-2$ //$NON-NLS-1$
		"jre" + File.separatorChar + "bin" + File.separatorChar + "java.exe"};      //$NON-NLS-3$ //$NON-NLS-2$ //$NON-NLS-1$							

	/**
	 * Return the Java executable to be used for launching this device.
	 * 
	 * @return
	 */
	protected File getJavaExecutable()
	{
		File executable = null;
		
		IVMInstall vmInstall = JavaRuntime.getDefaultVMInstall();
		File installLocation = vmInstall.getInstallLocation();
		
		for (int i = 0; i < CANDIDATE_JAVA_LOCATIONS.length; i++) {
			String javaLocation = CANDIDATE_JAVA_LOCATIONS[i];
			File javaExecutable = new File(installLocation, javaLocation);
			if (javaExecutable.exists()) {
				executable = javaExecutable;
				break;
			}
		}
		
		return executable;
	}
}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -