if (!dir.exists()) { VerilogPlugin.println("working dir: " + dir.getAbsolutePath() + " does not exist"); } else { if (!dir.isDirectory()) { VerilogPlugin.println("working dir: " + dir.getAbsolutePath() + " is not a directory"); } else { if (!dir.canWrite()) { VerilogPlugin.println("working dir: " + dir.getAbsolutePath() + " no write access"); } } }
	public void run()	{		//System.out.println(command);		File dir = folder.getLocation().toFile();		Runtime runtime = Runtime.getRuntime();		try		{			Process process = runtime.exec(command, null, dir);			MessageThread stderr = new MessageThread(process.getErrorStream());			MessageThread stdout = new MessageThread(process.getInputStream());			stderr.start();			stdout.start();						try			{				process.waitFor();			}			catch (InterruptedException e)			{				process.destroy();			}		}		catch (IOException e)		{			String msg = "Runtime error: cannot execute " + command;			VerilogPlugin.println(msg);		}	}