最近,在公司开发一插件,要求发送指令连接硬件,然后得到连接信息(无论正确与否),返回显示在一个Text中
因为刚出来实习,第一次做项目而且是在不怎么熟悉的linux下,有点手忙脚乱,
执行的结果是第一次能读取,但是不能再次读取,求大神指点迷津
connect是第一次操作,send是第2次操作;
代码如下
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.lang.reflect.InvocationTargetException;
import org.eclipse.core.runtime.IProgressMonitor;
import org.eclipse.jface.dialogs.Dialog;
import org.eclipse.jface.dialogs.IDialogConstants;
import org.eclipse.jface.dialogs.ProgressMonitorDialog;
import org.eclipse.jface.operation.IRunnableWithProgress;
import org.eclipse.swt.SWT;
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.events.SelectionListener;
import org.eclipse.swt.layout.GridData;
import org.eclipse.swt.layout.GridLayout;
import org.eclipse.swt.widgets.Button;
import org.eclipse.swt.widgets.Composite;
import org.eclipse.swt.widgets.Control;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.FileDialog;
import org.eclipse.swt.widgets.Label;
import org.eclipse.swt.widgets.MessageBox;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Text;
import org.eclipse.ui.internal.handlers.WizardHandler.New;
public class DownloadView extends Dialog{
private String message;
private Process command;
private Text text;
private Text address_t;
private String exec_f;
private String down_f;
private String address;
private Button discButton;
private InputStream i;
private BufferedReader reader;
private boolean flag=false;
String str;
static String s1;
private int c;
private int c1;
InputStreamReader reader1;
public DownloadView(Shell parentShell) {
super(parentShell);
}
protected void createButtonsForButtonBar(Composite parent) {
//重写父类方法,取消自带的OK cancel按钮
}
//重写父类方法,定义自己的组件
protected Control createDialogArea(Composite parent) {
this.getShell().setText("JLINK");
Composite com=new Composite(parent, SWT.None);
GridLayout lay=new GridLayout();
lay.numColumns = 1;
setMyLayout(lay);
com.setLayout(lay);
com.setLayoutData(new GridData(GridData.FILL_BOTH));
Composite composite=new Composite(com, SWT.None);
GridLayout layout=new GridLayout();
layout.numColumns = 3;
setMyLayout(layout);
composite.setLayout(layout);
composite.setLayoutData(new GridData(GridData.FILL_BOTH));
//连接按钮的处理
Button ConnectButton =new Button(composite, SWT.None);
ConnectButton.setText("CONNECT");
ConnectButton.addSelectionListener(new SelectionAdapter() {
@Override
public void widgetSelected(SelectionEvent e) {
// TODO Auto-generated method stub
message="sudo ejtag";
discButton.setEnabled(true);
doIt(message);
new MyThread().start();
System.out.println("线程已经启动");
System.out.println(message);
}
});