我想学习编写自己的包,这样我就不再依赖 IDE,我觉得我已经成为了。问题是我无法弄清楚如何运行自己的包,或者运行自己的包的正确方法是什么。
这是我用来学习一些基础知识的资源:http: //javaworkshop.sourceforge.net/chapter3.html
这是我当前的文件结构:
Main.java
/src
projectaqua/
GameFrame.java
/classes
projectaqua/
GameFrame.class
我在项目的根目录下运行命令:javac -d ./classes/ ./src/projectaqua/*.java
我最初在 /src/projectaqua 目录中创建了一个主文件并尝试运行该文件。我收到了这个错误:
Main.java:1: error: package projectaqua does not exist
import projectaqua.GameFrame;
在使用包编译主文件时,我尝试在 /classes/projectaqua 目录中运行应用程序,这给了我一个类未定义错误。
这编译了我的包,我面临的问题是我不明白你应该如何导入自己的包来运行它,以及运行包的文件在哪里?
根据我在学校学到的知识,在编写 GUI 应用程序时,我们创建了一个类,其中包含一个 main 函数来实例化框架,这就是它的唯一工作。这将在这个结构中的什么位置?
直觉上,该文件似乎在 src 文件之外,但我觉得这消除了 src 文件的目的。我在stackoverflow上没有找到任何有用的东西,如果你有或有请指出我的方向。
更多源代码:
游戏帧类:
package projectaqua;
import javax.swing.JFrame;
public class GameFrame extends JFrame
{
private int WINDOW_HEIGHT = 500;
private int WINDOW_WIDTH = 500;
private String title = "Project Aqua";
private boolean isVisible = true;
public GameFrame()
{
// Basic Window Defaults
setSize(WINDOW_WIDTH, WINDOW_HEIGHT);
setTitle(this.title);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// Content Pane junk
// Will be added
setVisible(this.isVisible);
}
}
主班
import projectaqua.GameFrame;
public class Main
{
public static void main(String[] args)
{
GameFrame launch = new GameFrame();
}
}