我有一个包含5个包和30个类的Java项目。我想在另一台计算机上测试这个项目,但是我不能在那台计算机上安装任何软件,所以我不能使用像Maven,Eclipse等那样的东西。有没有办法可以在那台计算机上执行程序?
我尝试做的是在我的计算机上使用Eclipse编译项目,然后转到另一台计算机并尝试通过主类.class
文件所在的文件夹执行项目主类。
I.E.,请说包Hello
中的主要班级名称为Greetings
,而Hello.class
位于名为folder
的文件夹中。所以我在folder
打开了命令行窗口并输入了命令:
java Greetings.Hello
那不起作用....
编辑:执行此操作后,我收到了消息:Error: Could not find or load main class Greetings.Hello
答案 0 :(得分:1)
如果包名是Greetings并且您想运行Hello.class
从问候文件夹
上方的某个级别执行java Greetings.Hello
在我看来,Hello.class不在 Greetings 文件夹
答案 1 :(得分:0)
如果系统上安装了javac
,您可以直接在系统上进行编译。您可以编译包括许多软件包在内的大型项目,并选择javac提供的不同选项。
javac工具读取用Java编程语言编写的类和接口定义,并将它们编译为字节码类文件。它还可以处理Java源文件和类中的注释。
有两种方法可以将源代码文件名传递给javac:
对于少量源文件,只需在命令行中列出文件名即可。 对于大量源文件,请在文件中列出文件名,以空格或换行符分隔。然后在javac命令行上使用列表文件名,前面加上@字符。 源代码文件名必须具有.java后缀,类文件名必须具有.class后缀,源文件和类文件都必须具有标识该类的根名称。例如,一个名为MyClass的类将写在一个名为MyClass.java的源文件中,并编译成一个名为MyClass.class的字节码类文件。
内部类定义会生成其他类文件。这些类文件具有组合内部和外部类名的名称,例如MyClass $ MyInnerClass.class。
您应该将源文件排列在反映其包树的目录树中。例如,如果将所有源文件保存在C:\ workspace中,则com.mysoft.mypack.MyClass的源代码应位于C:\ workspace \ com \ mysoft \ mypack \ MyClass.java中。
默认情况下,编译器将每个类文件放在与其源文件相同的目录中。您可以使用-d source
指定单独的目标目录答案 2 :(得分:0)
鉴于你有Eclipse并且你在Eclipse中运行代码:最快的方法是使用Eclipse并将其导出到可执行的JAR。
如果您有用于运行代码的运行配置(例如名为Hello):
这将创建Hello.jar文件,您可以执行输入: java -jar Hello.jar