【问题标题】:run java file in windows command prompt在 windows 命令提示符下运行 java 文件
【发布时间】:2015-08-14 08:12:17
【问题描述】:

我想在 Windows 中运行一个 java 项目。我首先在 linux 中编译了 .class 文件。复制回windows。现在在路径H:\deletefiles 下有delete.class, delete.java, a.jar, b.jar。类删除的包是deleteFiles

我的 java 类路径是 C:\program Files\Java\jre7\bin,我无权写入。

我在命令提示符下运行C:\program Files\Java\jre7\bin>

java -cp H:\deleteFiles\deleteFiles.delete 

总是出现找不到或无法加载主类的问题,请问是什么问题?谢谢

【问题讨论】:

    标签: java windows command-line


    【解决方案1】:

    您缺少要运行的实际课程。 -cp H:\deleteFiles\deleteFiles.delete 仅定义要​​使用的类路径,而不是要运行的 类(并且您也将类路径限制为单个类)。

    你想要的是:

    java -cp H:\deleteFiles\deleteFiles delete
    

    注意H:\deleteFiles\deleteFiles 之间的空格(空格),这意味着您将两个参数传递给 java 命令:

    1. -cp H:\deleteFiles\deleteFiles - 要使用的类路径
    2. delete - 要运行的类

    如果您需要 jar 文件中的类,您还需要将它们添加到类路径中:

    java -cp H:\deleteFiles\deleteFiles;H:\deleteFiles\deleteFiles\a.jar;H:\deleteFiles\deleteFiles\b.jar delete
    

    【讨论】:

    • 如果它们包含您的班级需要的课程,那么可以。
    • 抱歉再次打扰...如果我添加包名 java -cp H:\deleteFiles\deleteFiles deleteFiles.delete,它仍然找不到类。如果关闭包,它将在线程“main” java.lang.NoClassDefFoundError 中报错:(错误名称:deleteFiles/delete).....
    • 如果delete.java指定package deleteFiles,则需要指定包含包的目录为类路径:-cp H:\deleteFiles。这在 Java 教程中都有描述:docs.oracle.com/javase/tutorial/index.html
    【解决方案2】:

    您需要将类路径设置为包含包层次结构的位置。如果您的包名为deleteFiles,则该位置需要包含一个名为deleteFiles 的目录,其中包含类文件。

    在您的示例中,您将运行它 java -cp H:\ deleteFiles.delete

    【讨论】:

      【解决方案3】:

      你应该在你的 java 命令行中调用 delete.class,像这样:

      java -cp H:\deleteFiles\delete

      【讨论】:

      • @a_horse_with_no_name。是的,我们不需要。但是有什么问题?我总是在linux中这样做,没问题
      • 那是正确的,我编辑我的问题并删除 .class 扩展名,谢谢
      【解决方案4】:

      要执行 Java 程序,您有两个选择。使用类文件或使用 jar 文件。 如果你的程序只包含一个源文件,执行类文件就可以了。但是,如果您有多个来源,则必须复制所有来源。那么一个罐子会更实用。

      类:

      java -cp <class path> <class name>
      

      对于jar(如果设置了主类):

      java -jar <jar file>
      

      【讨论】:

        猜你喜欢
        • 2012-07-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2019-01-11
        • 2017-01-09
        • 2017-01-20
        • 2012-10-03
        • 2014-12-18
        相关资源
        最近更新 更多