@Override
	public Object execute(ExecutionEvent event) throws ExecutionException {
		// TODO Auto-generated method stub
		ISelection currentSel = HandlerUtil.getActiveSite(event)
				.getSelectionProvider().getSelection();
		if (currentSel instanceof IStructuredSelection) {
			IStructuredSelection selection = (IStructuredSelection) currentSel;

			Object firstElement = selection.getFirstElement();
			IFile file = (IFile) Platform.getAdapterManager().getAdapter(
					firstElement, IFile.class);
			if (file == null) {
				if (firstElement instanceof IAdaptable) {
					file = (IFile) ((IAdaptable) firstElement)
							.getAdapter(IFile.class);
				}
			}
			if (file != null) {
				try {
					new Thread(new JULFileRunner(file)).start();
				} catch (Exception e) {
					// TODO Auto-generated catch block
					e.printStackTrace();
				}
			}
		} else {
			new Thread(new JULFileRunner(null)).start();
		}

		return null;
	}