这个错误是什么意思!

wzjall 2006-03-16 10:07:43
//环境:eclipse+celipseMe

我写了个俄罗斯方块程序(自己动手写的第一个手机游戏,哎!)
运行之后结果是这样的:整个模拟器一闪而过!(是不是有语法错)
下面是控制台的信息!看不懂!可以给我详细讲解一下吗?

如果可能的话,在帮我讲讲如何调式可以吗?(我这没有这方面的资料,书都买不到,不知道他与vc的调式有什么区别,我很喜欢vc的调试)
(刚学没几天,望赐教!)

Running with storage root DefaultColorPhone
java.lang.ArrayIndexOutOfBoundsException
at TetrisGameCanvas.clearGrid(+15)
at TetrisGameCanvas.<init>(+68)
at main.<init>(+58)
at java.lang.Class.runCustomCode(+0)
at com.sun.midp.midlet.MIDletState.createMIDlet(+19)
at com.sun.midp.midlet.Scheduler.schedule(+52)
at com.sun.midp.main.Main.runLocalClass(+28)
at com.sun.midp.main.Main.main(+116)
Execution completed.
711708 bytecodes executed
6 thread switches
743 classes in the system (including system classes)
4079 dynamic objects allocated (113124 bytes)
5 garbage collections (94592 bytes collected)
...全文
479 15 打赏 收藏 转发到动态 举报
写回复
用AI写文章
15 条回复
切换为时间正序
请发表友善的回复…
发表回复
zncn2 2006-03-18
  • 打赏
  • 举报
回复
建议用一下NetBeans 5.0进行Java ME开发。我觉得NetBeans 5.0唯一让我感到新鲜的地方就是它的Java ME开发方式,用起来感觉跟在JBuilder中开发struts似的,用图形化的方式把若干个Form串接起来,每个Form都有一个入口,它的Command命令就是若干个出口,直接把一个Form的出口和另一个Form的入口用一根线连接起来就直接实现了界面切换了,省去了写相似代码的麻烦事儿:)
cnesky 2006-03-18
  • 打赏
  • 举报
回复
用JB调试很方便一样也是按F5
wzjall 2006-03-18
  • 打赏
  • 举报
回复
谢谢各位:

又奋斗了一个上午,终于有改进了(将书上的代码都去了,这下就真成了我独立开发的第一个小游戏了)

可惜还是有点逻辑错误!
(还是不会调试!)
我想问两个具体的调试问题:
1.设置断点后,如何让程序执行到断点处(vc是按f5)
2.我现在的单步调试按钮全部都变成了灰色,根本没法调试呀!该怎么办?
wzjall 2006-03-18
  • 打赏
  • 举报
回复
设置断点后,如何让程序执行到断点处(vc是按f5)
--------------------
wzjall 2006-03-18
  • 打赏
  • 举报
回复
怎么大家好象对eclipse都不怎么热心呀!eclipse就那么差吗?我可是很看好!

还是没人告诉我这个是什么错误!该如何解决呢?急!!!!
------------------------------------------------------
由于发生内部错误而无法创建此部件。产生该故障的原因是:Unmatched braces in the pattern.
----------------------------------------------------------------
doway 2006-03-17
  • 打赏
  • 举报
回复
>java.lang.ArrayIndexOutOfBoundsException
> at TetrisGameCanvas.clearGrid(+15)

这是数组下标越界了,连出错的方法和出错的行号都已经指出了。


>java.lang.IllegalArgumentException: Unmatched braces in the pattern.
> at java.text.MessageFormat.applyPattern(Unknown Source)

这个说得也非常清楚,调用 java.text.MessageFormat 的 applyPattern 方法时,模板不匹配。楼主将相应的代码贴出来看一下。

xueyong1203 2006-03-17
  • 打赏
  • 举报
回复
debug 去看 eclipseMe安装后的帮助文档设置一下~~

你不会debug以后根本没法出来混
wzjall 2006-03-17
  • 打赏
  • 举报
回复
注:里面有小部分代码是书上的!但整个程序的逻辑是我自己想的

----------------------------------------
看来还是有数组越界的问题!
但不会调试,真不知道该怎样去找错误!
doway 2006-03-17
  • 打赏
  • 举报
回复
又看了一下,好像是 eclipse 本身出了问题。因此,是开发工具的问题。

看来还是 JBuilder 靠得住啊。:)


wzjall 2006-03-17
  • 打赏
  • 举报
回复


import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;

class canvas extends GameCanvas implements Runnable {

Thread t;

private static final int WIDTH_NUMBER = 10; //一行共10个方格

private static final int HEIGHT_NUMBER = 16;//一列共16个方格

private static final int GRIDWIDTH = 10;//方格的大小

private static final int bx = 60;//画版的x坐标

private static final int by = 60;//画版的y坐标

private broad newBroad = new broad();

private int[][] newPane=new int[4][4];//用来存储newBroad.GetNewCell()的返回值!

//当前运动方格的“逻辑”坐标,每个pane 有四个小方格!“逻辑”坐标(从(0,0)开始!如:paneCoordinagep[2][0]=13,
//paneCoordinagep[2][1]=4,则第三个小方格的实际坐标为(13*GRIDWIDTH+bx,4*GRIDWIDTH+by)
private int[][] paneCoordinate=new int[4][2];

//保存整个画布上需要画的方格的信息,
private int[][] grid =new int [WIDTH_NUMBER][HEIGHT_NUMBER];

private boolean pause = false;//是否暂停游戏

private boolean reBegin = false;//是否重新开始游戏

private int totalscore; //得分

private String text = "得分:";

private Graphics pen;

canvas()
{
super(true);
pen = this.getGraphics();
clearGrid();
t = new Thread(this);
t.start();
}

protected void start()
{
pause = false;
}

protected void pause()
{
pause = true;
}

private void clearGrid()
{
int i, j;
for (i = 0; i <= WIDTH_NUMBER - 1; i++)
for (j = 0; j <= HEIGHT_NUMBER - 1; j++)
{
grid[i][j] = 0;
}
}


//是否可以向下移动;
private boolean moveDownAble()
{
for(int i=0;i<4;i++)
{
int xCoordinate=paneCoordinate[i][0]+1;
int yCoordinate=paneCoordinate[i][1];

if(grid[xCoordinate][yCoordinate]==1)
{
return false;
}
}

return true;
}

// 是否可以向左边移动;
private boolean moveLeftAble()
{
for(int i=0;i<4;i++)
{
int xCoordinate=paneCoordinate[i][0];
int yCoordinate=paneCoordinate[i][1]-1;

if(grid[xCoordinate][yCoordinate]==1)
{
return false;
}
}

return true;
}
// 是否可以向右边移动;
private boolean moveRightAble()
{
for(int i=0;i<4;i++)
{
int xCoordinate=paneCoordinate[i][0];
int yCoordinate=paneCoordinate[i][1]+1;

if(grid[xCoordinate][yCoordinate]==1)
{
return false;
}
}

return true;
}

//清除没有空白的一行方块 ,并把上方的方块下移
//可以消行,返回true
private boolean ClearLine()
{
boolean isLine = false, hasline = false;
int i, j, m, n;
for (i = HEIGHT_NUMBER - 1; i >= 4; i--)
{
for (j = 0; j <= WIDTH_NUMBER - 1; j++)
{
if (grid[i][j] == 0)
{
isLine = false;
break;
}
else
{
isLine = true;
}
}
//如果是整行,移动方块
if (isLine == true)
{
for (m = i; m >= 4; m--)
{
for (n = 0; n <= WIDTH_NUMBER - 1; n++)
{
grid[m][n] = grid[m - 1][n];
}
}

i = i + 1;
totalscore = totalscore + 1;
//显示当前得分
text = "得分:" + String.valueOf(totalscore);
hasline = true;
}
}
return hasline;
}

private boolean gameOver()
{
boolean gameover = false;
int i, j;
for (i = HEIGHT_NUMBER - 1; i >= 0; i--)
{
for (j = 0; j <= WIDTH_NUMBER - 1; j++)
{
if (grid[i][j] == 1)
{
gameover = false;
break;
}
else
{
gameover = true;
}
}
if (gameover == true)
{
if (i <= 1)
return true;
else
return false;
}
}
return false;
}

//画3维方格
public static void drawBrick(int px, int py, Graphics g)
{
//画灰边
g.setColor(0x00c0c0c0);
g.drawRect(px,py,GRIDWIDTH,GRIDWIDTH);
//画中心
g.setColor(0x00FFFF00);
g.fillRect(px + 1, py + 1, GRIDWIDTH - 1, GRIDWIDTH - 1);
}

//画整个游戏界面
protected void drawGrid(Graphics g)
{
//画背景色
g.setColor(0x000000);
g.fillRect(0, 0, this.getWidth(), this.getHeight());
//画大边框
g.setColor(0x00FF00FF);
g.drawRect(bx,by,WIDTH_NUMBER*GRIDWIDTH,HEIGHT_NUMBER*GRIDWIDTH);
//绘制提示信息:
g.setColor(0x00ffff00);
g.drawString("按#新游戏", bx + WIDTH_NUMBER*GRIDWIDTH + 10, by, Graphics.TOP
| Graphics.LEFT);
//绘制得分信息:
g.drawString(text, bx + WIDTH_NUMBER*GRIDWIDTH + 10, by + 20,
Graphics.TOP | Graphics.LEFT);

//画提示方格


//画静态的方格
int i, j;
for (i = 0; i < HEIGHT_NUMBER; i++)
{
for (j = 0; j < WIDTH_NUMBER; j++)
{
if (grid[i][j] == 1)
{
drawBrick(bx + j * GRIDWIDTH, by + i * GRIDWIDTH,
pen);
}
}
}

//画动态的方格
for(i=0;i<4;i++)
{
drawBrick(bx+paneCoordinate[i][0]*GRIDWIDTH,by+paneCoordinate[i][1]*GRIDWIDTH,pen);
}

flushGraphics();
}

public void keyPressed() {
int x, y;
int keyState = getKeyStates();

//判断上下左右键是否被按下
if ((keyState & UP_PRESSED) != 0)
{

}

if ((keyState & DOWN_PRESSED) != 0)
{
if(moveDownAble())
{
for(int i=0;i<4;i++)
{
paneCoordinate[i][0]++;
}
}
}

if ((keyState & LEFT_PRESSED) != 0)
{
if(moveLeftAble())
{
for(int i=0;i<4;i++)
{
paneCoordinate[i][1]--;
}
}
}

if ((keyState & RIGHT_PRESSED) != 0)
{
if(moveRightAble())
{
for(int i=0;i<4;i++)
{
paneCoordinate[i][1]++;
}
}
}

}

public void run()
{
//无限循环检测键盘的输入
while (true)
{
keyPressed();
drawGrid(pen);
ClearLine();

if(moveDownAble())
{
for(int i=0;i<4;i++)
{
paneCoordinate[i][0]++;//更新动态方格的逻辑坐标
}

drawGrid(pen);
ClearLine();
}
else
{
newPane=newBroad.GetNewCells();//产生新的方格
int k=0;
for(int i=0;i<4;i++)
{
for(int j=0;j<4;j++)
{
if(newPane[i][j]==1)
{
paneCoordinate[k++][0]=HEIGHT_NUMBER * GRIDWIDTH/2+j;
paneCoordinate[k++][1]=i;
}
}
}

drawGrid(pen);
}

if(gameOver())
{
break;
}

try
{
Thread.sleep(500);

}
catch (InterruptedException ie)
{
}
}
}
}




wzjall 2006-03-17
  • 打赏
  • 举报
回复
现在我的单步调试都成了灰色,没法调试了?这是什么原因啊!

应doway前辈的要求!贴出我的俄罗斯方块的代码?(还很粗糙,甚至还有语法错误!请指教)


import java.util.*;


public class broad
{
private int[][] Stick1 = new int[][]{ {1,0,0,0},
{1,0,0,0},
{1,0,0,0},
{1,0,0,0}},
Stick2 = new int[][]{ {1,1,1,1},
{0,0,0,0},
{0,0,0,0},
{0,0,0,0}},
Stick3 = new int[][]{ {1,0,0,0},
{1,0,0,0},
{1,0,0,0},
{1,0,0,0}},
Stick4 = new int[][]{ {1,1,1,1},
{0,0,0,0},
{0,0,0,0},
{0,0,0,0}};

private int[][] Triada1 = new int[][]{ {0,1,0,0},
{1,1,1,0},
{0,0,0,0},
{0,0,0,0}},
Triada2 = new int[][]{ {1,0,0,0},
{1,1,0,0},
{1,0,0,0},
{0,0,0,0}},
Triada3 = new int[][]{{1,1,1,0},
{0,1,0,0},
{0,0,0,0},
{0,0,0,0}},
Triada4 = new int[][]{{0,1,0,0},
{1,1,0,0},
{0,1,0,0},
{0,0,0,0}},

LCorner1 = new int[][]{ {1,1,1,0},
{1,0,0,0},
{0,0,0,0},
{0,0,0,0}},
LCorner2 = new int[][]{ {1,1,0,0},
{0,1,0,0},
{0,1,0,0},
{0,0,0,0}},
LCorner3 = new int[][]{ {0,0,1,0},
{1,1,1,0},
{0,0,0,0},
{0,0,0,0}},
LCorner4 = new int[][]{ {1,0,0,0},
{1,0,0,0},
{1,1,0,0},
{0,0,0,0}},

RCorner1 = new int[][]{ {1,1,1,0},
{0,0,1,0},
{0,0,0,0},
{0,0,0,0}},
RCorner2 = new int[][]{ {0,1,0,0},
{0,1,0,0},
{1,1,0,0},
{0,0,0,0}},
RCorner3 = new int[][]{ {1,0,0,0},
{1,1,1,0},
{0,0,0,0},
{0,0,0,0}},
RCorner4 = new int[][]{ {1,1,0,0},
{1,0,0,0},
{1,0,0,0},
{0,0,0,0}},

LZigzag1 = new int[][]{ {1,1,0,0},
{0,1,1,0},
{0,0,0,0},
{0,0,0,0}},
LZigzag2 = new int[][]{ {0,1,0,0},
{1,1,0,0},
{1,0,0,0},
{0,0,0,0}},
LZigzag3 = new int[][]{ {1,1,0,0},
{0,1,1,0},
{0,0,0,0},
{0,0,0,0}},
LZigzag4 = new int[][]{ {0,1,0,0},
{1,1,0,0},
{1,0,0,0},
{0,0,0,0}},

RZigzag1 = new int[][]{ {0,1,1,0},
{1,1,0,0},
{0,0,0,0},
{0,0,0,0}},
RZigzag2 = new int[][]{ {1,0,0,0},
{1,1,0,0},
{0,1,0,0},
{0,0,0,0}},
RZigzag3 = new int[][]{ {0,1,1,0},
{1,1,0,0},
{0,0,0,0,},
{0,0,0,0}},
RZigzag4 = new int[][]{ {1,0,0,0},
{1,1,0,0},
{0,1,0,0},
{0,0,0,0}},

box = new int[][]{{1,1,0,0},{1,1,0,0},{0,0,0,0},{0,0,0,0}};
private int[][][] cells= new int[][][]{Stick1,Stick2,Stick3,Stick4,
Triada1,Triada2,Triada3,Triada4,
LCorner1,LCorner2,LCorner3,LCorner4,
RCorner1,RCorner2,RCorner3,RCorner4,
LZigzag1,LZigzag2,LZigzag3,LZigzag4,
RZigzag1,RZigzag2,RZigzag3,RZigzag4,
box,box,box,box,};
//获得随机方块
public int[][] GetNewCells()
{
int getnum =0;
Random random = new Random();
getnum = random.nextInt(27);
return cells[getnum];
}

}



import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;

public class main extends MIDlet implements CommandListener {


private canvas sg;
private Command startCommand = new Command("Start",Command.SCREEN,1);
private Command exitCommand = new Command("Exit", Command.EXIT, 1);
private Command pauseCommand = new Command("Pause", Command.SCREEN, 1);

public main()
{

sg = new canvas();
sg.addCommand(pauseCommand);
sg.addCommand(exitCommand);
sg.setCommandListener(this);
Display.getDisplay(this).setCurrent(sg);

}

protected void startApp()
{
}

protected void pauseApp()
{
}

protected void destroyApp(boolean arg0)
{
}

public void commandAction(Command c, Displayable d)
{
if (c == exitCommand)
{
destroyApp(false);
notifyDestroyed();
}
if (c ==startCommand)
{
sg.addCommand(pauseCommand);
sg.removeCommand(startCommand);
sg.start();


}
if (c == pauseCommand)
{
sg.removeCommand(pauseCommand);
sg.addCommand(startCommand);

sg.pause();


}
}

}



cnesky 2006-03-17
  • 打赏
  • 举报
回复
运行的时候,你已经用catch机制把错误捕捉了,然后又可以继续运行了
wzjall 2006-03-17
  • 打赏
  • 举报
回复
谢谢!这是数组下标越界了,连出错的方法和出错的行号都已经指出了
---------------------------------------------------
这个确实是这样的!

但下面的为什么会有这个错误呢?我试了好几个书上的例子,运行没问题!但是一调试就出现下面的类似的错误!
>java.lang.IllegalArgumentException: Unmatched braces in the pattern.
> at java.text.MessageFormat.applyPattern(Unknown Source)

这个说得也非常清楚,调用 java.text.MessageFormat 的 applyPattern 方法时,模板不匹配。楼主将相应的代码贴出来看一下。
----------------------------------------------
我贴出一个书上的例子,大家看看!


//主程序
import javax.microedition.lcdui.*;
import javax.microedition.midlet.*;


public class a extends MIDlet implements CommandListener{

private Command exitCommand;
private b mygamescan;
public a() {
exitCommand = new Command("Exit", Command.EXIT, 1);
mygamescan = new b();
mygamescan.addCommand(exitCommand);
mygamescan.setCommandListener(this);
Display.getDisplay(this).setCurrent(mygamescan);

}

protected void startApp() {
}

protected void pauseApp() {
}

protected void destroyApp(boolean arg0) {
}

public void commandAction(Command c, Displayable d) {
if (c == exitCommand) {
destroyApp(false);
notifyDestroyed();
}
}

}



import javax.microedition.lcdui.*;
import javax.microedition.lcdui.game.*;

public class b extends GameCanvas implements Runnable {

private Graphics pen;

private int width = 20;//要绘制的方块宽度

private int height = 20;//要绘制的方块高度

private int screenWidth = 0; //屏幕宽度

private int screenHeight = 0; //屏幕高度

private int drawX = 0; //要绘制的X坐标

private int drawY = 0; //要绘制的Y坐标

protected b() {
super(true);
pen = this.getGraphics();
screenWidth = this.getWidth();
screenHeight = this.getHeight();
drawX = screenWidth / 2 - width / 2;
drawY = screenHeight / 2 - height / 2;

draw();

Thread thread = new Thread(this);
thread.start();
}

//绘制黑色方块
protected void draw() {

pen.setColor(0xffffff);
pen.fillRect(0, 0, screenWidth, screenHeight);

pen.setColor(0, 0, 0);
pen.fillRect(drawX, drawY, 20, 20);
flushGraphics();
}

public void keyPressed() {
int x, y;
int keyState = getKeyStates();

//判断上下左右键是否被按下
if ((keyState & UP_PRESSED) != 0) {
if (drawY - 2 > 0)
drawY = drawY - 2;
else
drawY = screenHeight;

}
if ((keyState & DOWN_PRESSED) != 0) {
if (drawY + 2 < screenHeight)
drawY = drawY + 2;
else
drawY = 0;

}
if ((keyState & LEFT_PRESSED) != 0) {
if (drawX - 2 > 0)
drawX = drawX - 2;
else
drawX = screenWidth;

}
if ((keyState & RIGHT_PRESSED) != 0) {
if (drawX + 2 < screenWidth)
drawX = drawX + 2;
else
drawX = 0;
}

}

public void run() {
//无限循环检测键盘的输入
while (true) {
keyPressed();
draw();
try {
Thread.sleep(20);
} catch (InterruptedException ie) {
}
}
}

}






homesos 2006-03-16
  • 打赏
  • 举报
回复
这个错误:
java.lang.ArrayIndexOutOfBoundsException
描述是这样的:
Thrown to indicate that an array has been accessed with an illegal index. The index is either negative or greater than or equal to the size of the array.
就是访问的数组索引越界的意思


刚刚看了上面的贴子,可能是使用了不存在的对象(可能是字符串)。
由于对这个库我不熟,所以无法定位具体原因,
你自己也可以定位一下看看,通过异常信息一般都能定位出来问题所在,顺着异常信息看就知道哪个方法调用哪个方法,在哪出的错,再查看一下源码,应该就能搞定。

wzjall 2006-03-16
  • 打赏
  • 举报
回复
我请人帮我单步调试了一下主程序,按下f6后,跳出下面的提示信息:

由于发生内部错误而无法创建此部件。产生该故障的原因是:Unmatched braces in the pattern.

单击"详细信息"后出现下面的信息:
java.lang.IllegalArgumentException: Unmatched braces in the pattern.
at java.text.MessageFormat.applyPattern(Unknown Source)
at java.text.MessageFormat.<init>(Unknown Source)
at java.text.MessageFormat.format(Unknown Source)
at org.eclipse.jdt.internal.core.util.Messages.bind(Messages.java:361)
at org.eclipse.jdt.internal.core.util.Messages.bind(Messages.java:327)
at org.eclipse.jdt.internal.core.util.Disassembler.disassemble(Disassembler.java:600)
at org.eclipse.jdt.internal.core.util.Disassembler.disassemble(Disassembler.java:462)
at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor$SourceAttachmentForm.updateCodeView(ClassFileEditor.java:400)
at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor$SourceAttachmentForm.createControl(ClassFileEditor.java:212)
at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.verifyInput(ClassFileEditor.java:715)
at org.eclipse.jdt.internal.ui.javaeditor.ClassFileEditor.createPartControl(ClassFileEditor.java:672)
at org.eclipse.ui.internal.EditorReference.createPartHelper(EditorReference.java:609)
at org.eclipse.ui.internal.EditorReference.createPart(EditorReference.java:384)
at org.eclipse.ui.internal.WorkbenchPartReference.getPart(WorkbenchPartReference.java:552)
at org.eclipse.ui.internal.EditorReference.getEditor(EditorReference.java:223)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditorBatched(WorkbenchPage.java:2362)
at org.eclipse.ui.internal.WorkbenchPage.busyOpenEditor(WorkbenchPage.java:2295)
at org.eclipse.ui.internal.WorkbenchPage.access$9(WorkbenchPage.java:2287)
at org.eclipse.ui.internal.WorkbenchPage$9.run(WorkbenchPage.java:2273)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2268)
at org.eclipse.ui.internal.WorkbenchPage.openEditor(WorkbenchPage.java:2249)
at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility$1.run(SourceLookupFacility.java:358)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:69)
at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility.openEditor(SourceLookupFacility.java:367)
at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility.openEditor(SourceLookupFacility.java:278)
at org.eclipse.debug.internal.ui.sourcelookup.SourceLookupFacility.display(SourceLookupFacility.java:209)
at org.eclipse.debug.ui.DebugUITools.displaySource(DebugUITools.java:673)
at org.eclipse.debug.internal.ui.views.launch.LaunchView$SourceDisplayJob.runInUIThread(LaunchView.java:209)
at org.eclipse.ui.progress.UIJob$1.run(UIJob.java:93)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:123)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:3102)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:2761)
at org.eclipse.ui.internal.Workbench.runEventLoop(Workbench.java:1699)
at org.eclipse.ui.internal.Workbench.runUI(Workbench.java:1663)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:367)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:143)
at org.eclipse.ui.internal.ide.IDEApplication.run(IDEApplication.java:103)
at org.eclipse.core.internal.runtime.PlatformActivator$1.run(PlatformActivator.java:226)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:376)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:163)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)
at java.lang.reflect.Method.invoke(Unknown Source)
at org.eclipse.core.launcher.Main.invokeFramework(Main.java:334)
at org.eclipse.core.launcher.Main.basicRun(Main.java:278)
at org.eclipse.core.launcher.Main.run(Main.java:973)
at org.eclipse.core.launcher.Main.main(Main.java:948)

这又是什么原因呢?

13,100

社区成员

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

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