无法找到或加载主 class osx 终端
Could not find or load main class osx terminal
此常见问题的 None 个答案解决了我的问题。
我有一个这样的文件目录树
root
|
+--> com
|
+--> Game.java
+--> Window.java
我成功编译了Game.java
和Window.java
,结果树是这样的
root
|
+--> com
|
+--> Game.java
+--> Game.class
+--> Window.java
+--> Window.class
我将目录改回 root 并且 运行 从 osx 终端执行以下命令
java com.Game
并且我收到以下错误
Could not find or load main class
我不知道为什么,这是我的 类
Game.java
package com;
import java.awt.*;
public class Game extends Canvas implements Runnable {
private static final long mSerialVersionUid = -240870510533527854L;
public static final int WIDTH = 640, HEIGHT = WIDTH / 12 * 9;
public Game(){
new Window(WIDTH, HEIGHT, "Let's build a game!", this);
}
public synchronized void start(){
}
@Override
public void run(){
}
public static void main(String[] args){
}
}
Window.java
package com;
import java.awt.Canvas;
import javax.swing.JFrame;
import java.awt.Dimension;
public class Window extends Canvas {
public Window(int width, int height, String title, Game game){
JFrame frame = new JFrame(title);
frame.setPreferredSize(new Dimension(width, height));
frame.setMaximumSize(new Dimension(width, height));
frame.setMinimumSize(new Dimension(width, height));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.add(game);
frame.setVisible(true);
game.start();
}
}
这应该按预期工作 — 我 运行 你的代码在 macOS 10.12.4 上运行得很好 ;)
您可能有 CLASSPATH
环境变量 — 没有当前目录! — 在您的 shell 中定义。如果是这种情况,请试试这个:
java -cp . com.Game
顺便说一下,要实际显示您定义的 window,请在 main
方法中创建一个 Game
对象:
public static void main(String[] args) {
new Game();
}
None 个答案解决了我的问题。
我有一个这样的文件目录树
root
|
+--> com
|
+--> Game.java
+--> Window.java
我成功编译了Game.java
和Window.java
,结果树是这样的
root
|
+--> com
|
+--> Game.java
+--> Game.class
+--> Window.java
+--> Window.class
我将目录改回 root 并且 运行 从 osx 终端执行以下命令
java com.Game
并且我收到以下错误
Could not find or load main class
我不知道为什么,这是我的 类
Game.java
package com;
import java.awt.*;
public class Game extends Canvas implements Runnable {
private static final long mSerialVersionUid = -240870510533527854L;
public static final int WIDTH = 640, HEIGHT = WIDTH / 12 * 9;
public Game(){
new Window(WIDTH, HEIGHT, "Let's build a game!", this);
}
public synchronized void start(){
}
@Override
public void run(){
}
public static void main(String[] args){
}
}
Window.java
package com;
import java.awt.Canvas;
import javax.swing.JFrame;
import java.awt.Dimension;
public class Window extends Canvas {
public Window(int width, int height, String title, Game game){
JFrame frame = new JFrame(title);
frame.setPreferredSize(new Dimension(width, height));
frame.setMaximumSize(new Dimension(width, height));
frame.setMinimumSize(new Dimension(width, height));
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.setLocationRelativeTo(null);
frame.add(game);
frame.setVisible(true);
game.start();
}
}
这应该按预期工作 — 我 运行 你的代码在 macOS 10.12.4 上运行得很好 ;)
您可能有 CLASSPATH
环境变量 — 没有当前目录! — 在您的 shell 中定义。如果是这种情况,请试试这个:
java -cp . com.Game
顺便说一下,要实际显示您定义的 window,请在 main
方法中创建一个 Game
对象:
public static void main(String[] args) {
new Game();
}