ECLIPSE打包SWT/JFACE的问题

dengjie532054105 2008-05-21 11:34:32
我自己做了一个简单的浏览器,用SWT/JFACE做的,但是按照一般的SWT打包,然后加入需要的org.eclipse.core.runtime_3.2.0.v20060603.jar和
org.eclipse.swt.win32.win32.x86_3.2.1.v3235.jar包,然后加了
package com;swt-win32-3235.dll,却不能按照正常的运行.我原来用这样的方法运行过打包好的SWT程序,这次不行.他提示的是:could not find the main class.Program will exit.但是我在清单文件里面也配置好了:下面是我的清单文件:Manifest-Version: 1.0
Class-Path: ./lib/org.eclipse.core.runtime_3.2.0.v20060603.jar
./lib/org.eclipse.swt.win32.win32.x86_3.2.1.v3235.jar
./lib/org.eclipse.jface_3.2.1.M20060908-1000.jar
Sealed: true
Main-Class: com.BrowserExample
大家帮我看看是什么问题?下面是原程序,谢谢了.

import java.net.*;
import org.eclipse.swt.*;
import org.eclipse.swt.browser.*;
import org.eclipse.jface.action.*;
import org.eclipse.jface.window.*;
import org.eclipse.swt.widgets.*;
import org.eclipse.jface.resource.*;
import org.eclipse.swt.graphics.*;
import org.eclipse.swt.layout.*;


public class BrowserExample extends ApplicationWindow{

/**
* Launch the application
* @param args
*/
private Browser browser;
private Text text;
private Label labelAddress;
private Label labelStatus;
public BrowserExample()
{
super(null);
addToolBar(SWT.FLAT);

}
public void run()
{
setBlockOnOpen(true);
open();
Display.getCurrent().dispose();
}


protected void configureShell(Shell shell)
{
final Display display=Display.getDefault();
super.configureShell(shell);
shell.setSize(550,350);
shell.setText("小杰子浏览器");
Image image=new Image(display,"icons/chinaz1.gif");
shell.setImage(image);

}
protected Control createContents(Composite parent)
{
Composite composite=new Composite(parent,SWT.NONE);
composite.setLayout(new GridLayout(1,false));
createBrowser(composite);
return composite;
}
private void createBrowser(Composite comp)
{
Composite composite=new Composite(comp,SWT.NONE);
composite.setLayoutData(new GridData(GridData.FILL_BOTH));
composite.setLayout(new GridLayout(3,false));
labelAddress=new Label(composite,SWT.NONE);
labelAddress.setText("地址:");
text=new Text(composite,SWT.BORDER);
GridData gridText=new GridData(GridData.FILL_HORIZONTAL);
text.setLayoutData(gridText);

Button buttonRun=new Button(composite,SWT.NULL);
buttonRun.setImage(new Image(comp.getShell().getDisplay(),"icons/run.gif"));
buttonRun.setToolTipText("转到");
browser=new Browser(composite,SWT.BORDER);
GridData gridBrowser=new GridData(GridData.FILL_BOTH);
gridBrowser.horizontalSpan=3;
browser.setLayoutData(gridBrowser);
labelStatus=new Label(composite,SWT.NULL);
labelStatus.setText("准备");
GridData gridlabelStatus=new GridData(GridData.FILL_HORIZONTAL);
gridlabelStatus.horizontalSpan=2;
labelStatus.setLayoutData(gridlabelStatus);

final ProgressBar progressBar=new ProgressBar(composite,SWT.SMOOTH);
Listener openURLListener=new Listener()
{
public void handleEvent(Event event)
{
browser.setUrl(text.getText());
}
};
buttonRun.addListener(SWT.Selection,openURLListener);
text.addListener(SWT.DefaultSelection,openURLListener);
browser.addLocationListener(new LocationListener(){
public void changing(LocationEvent event){
text.setText(event.location);
}
public void changed(LocationEvent event){

}
});
browser.addProgressListener(new ProgressListener(){
public void changed(ProgressEvent event){
progressBar.setMaximum(event.total);
progressBar.setSelection(event.current);
}
public void completed(ProgressEvent event){
progressBar.setSelection(0);
}
});
}
protected ToolBarManager createToolBarManager(int style){
ToolBarManager toolBarManager=new ToolBarManager(style);
toolBarManager.add(new backwardAction());
toolBarManager.add(new forwardAction());
toolBarManager.add(new stopAction());
toolBarManager.add(new refreshAction());
toolBarManager.add(new Separator());
toolBarManager.add(new homeAction());
return toolBarManager;
}
class backwardAction extends Action{
public backwardAction(){
setToolTipText("后退");
try{
ImageDescriptor icon=ImageDescriptor.createFromURL(new URL("file:icons/backward.gif"));
setImageDescriptor(icon);
}catch(MalformedURLException e){
System.err.println(e.getMessage());
}
}
public void run(){
browser.back();
}
}

class forwardAction extends Action{
public forwardAction(){
setToolTipText("前进");
try{
ImageDescriptor icon=ImageDescriptor.createFromURL(new URL("file:icons/forward.gif"));
setImageDescriptor(icon);
}catch(MalformedURLException e){
System.err.println(e.getMessage());
}
}
public void run(){
browser.forward();
}
}

class stopAction extends Action{
public stopAction(){
setToolTipText("停止");
try{
ImageDescriptor icon=ImageDescriptor.createFromURL(new URL("file:icons/stop.gif"));
setImageDescriptor(icon);
}catch(MalformedURLException e){
System.err.println(e.getMessage());
}
}
public void run(){
browser.stop();
}
}
class refreshAction extends Action{
public refreshAction(){
setToolTipText("刷新");
try{
ImageDescriptor icon=ImageDescriptor.createFromURL(new URL("file:icons/refresh.gif"));
setImageDescriptor(icon);
}catch(MalformedURLException e){
System.err.println(e.getMessage());
}
}
public void run(){
browser.refresh();
}
}

class homeAction extends Action{
public homeAction(){
setToolTipText("主页");
try{
ImageDescriptor icon=ImageDescriptor.createFromURL(new URL("file:icons/home.gif"));
setImageDescriptor(icon);
}catch(MalformedURLException e){
System.err.println(e.getMessage());
}
}
public void run(){
browser.setUrl("http://www.baidu.com");
}
}

public static void main(String[] args){
new BrowserExample().run();



}

}


...全文
151 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
dengjie532054105 2008-05-23
  • 打赏
  • 举报
回复
你们都试过了嘛?就是用ECLIPSE把我的代码拿去调试了然后打包部署试了嘛?大哥们我是初学者.我其实做这个也是玩的.也不是那样在乎结果就是遇到问题特别不爽.试试吧.
HONGDONG8800 2008-05-23
  • 打赏
  • 举报
回复
心有余而力不足啊
dengjie532054105 2008-05-23
  • 打赏
  • 举报
回复
关注也要找兄弟帮我解决一下嘛.555我都疯了.大家可以试试,真的我就是不知道为什么部署不成功.
猿话 2008-05-22
  • 打赏
  • 举报
回复
??????????????
dengjie532054105 2008-05-22
  • 打赏
  • 举报
回复
大哥不是,我设置了主类的入口,如果大哥不信可以用ECLIPSE3.2的版本,自己把我代码复制上去,试试.然后打包然后部署应用程序,我发现还是不行啊.急救啊.
motoyama57 2008-05-22
  • 打赏
  • 举报
回复
我也是同样的问题,不解......闷...
刘彬彬 2008-05-22
  • 打赏
  • 举报
回复
看你的错误信息.
应该是你没有设置程序入口类,也就是主类.
你没有按照eclipse打包的步骤一步步来,它会有提示的.
但是你也许就是在第一步,或第二步的时候,就直接finish了.嘿嘿,导致了could not find the main class.Program will exit.
ThirdDimension 2008-05-22
  • 打赏
  • 举报
回复
极度关注

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧