Java 斯坦福大学';s Karel机器人抛出NullPointerException

Java 斯坦福大学';s Karel机器人抛出NullPointerException,java,karel,Java,Karel,我已经开始学习斯坦福网站上提供的课程编程方法(CS106A)。 但我不能在里面开始斯坦福卡雷尔 我正在使用eclipse indigo classic 3.7.1和Windows 7 64位操作系统 我编写了以下代码: import stanford.karel.*; public class CollectNewspaperKarel extends SuperKarel { // You fill in this part public void run(){

我已经开始学习斯坦福网站上提供的课程编程方法(CS106A)。 但我不能在里面开始斯坦福卡雷尔

我正在使用eclipse indigo classic 3.7.1和Windows 7 64位操作系统

我编写了以下代码:

import stanford.karel.*;

public class CollectNewspaperKarel extends SuperKarel {
    // You fill in this part
    public void run(){
      move();
      move();
    }
}
它给出了错误

Exception in thread "main" java.lang.NullPointerException
   at acm.program.Program.main(Program.java:917)
   at stanford.karel.Karel.main(Karel.java:202)
我按照给出的一些说明进行操作,但得到了一个空白屏幕作为输出


可以找到斯坦福大学的任务1,斯坦福大学的机器人卡雷尔可以使用

很多时候,这可能是由于没有更改构建设置之类的事情。检查eclipse中的配置设置。

由于您未使用斯坦福大学提供的eclipse版本,因此出现了该错误。有关更详细的信息

编辑:已删除此链接,因为它不再工作

编辑:

由于上面的链接不再有效,我编写了以下步骤。由于我不再使用Karel,如果有人按照指南进行了修改,请评论编辑此答案

说明:

a、 访问并下载以下软件

  • 斯坦福大学的Eclipse for windows
  • Java Jre软件
  • b、 安装软件

    c、 从“工作分配”选项卡下载Assignment1.zip

    d、 将分配安装到Eclipse中

    现在,我们已经完成了安装指南。让我们讨论一下常见问题:

    问题:

    问题1:空白屏幕

    这意味着您安装了最新版本的Sun Java JRE软件。 这个问题的解决办法是 I.卸载所有JRE软件版本,但从斯坦福网站下载的版本除外

    或者,试试这个

    a、 打开Eclipse软件

    b、 在菜单工具栏中,单击“窗口”,然后单击“首选项”

    c。遵循以下简单步骤:

  • 在首选项窗口中,单击Java
  • 在Java下显示的下拉部分中,单击Installed JRE
  • 我们从斯坦福网站下载的JRE是jre6更新2。所以选择它。只有jre6与斯坦福eclipse软件兼容。 因此,取消选中系统中安装的所有其他版本,并选中jre6框,如下图所示
  • 单击“确定”。 5.运行程序。现在您可以看到输出很好
  • 问题2:错误

    运行程序时,有时可能会注意到此错误

    *

    *


    这意味着您没有下载斯坦福Eclipse软件,您使用的是从Eclipse网站下载的最新版本的Eclipse。因此,请遵循我上面提到的详细指南。一切都会很好。

    你好Bhuwanshani虽然我以前写过一个答案,但现在我正在编写在任何eclipse版本中运行Karel的整个过程

  • 在Eclipse中创建一个新项目(文件------->new------->Java项目)

  • 在创建的项目中加载作业

    步骤a:-在所需文件夹中提取作业1

    步骤b:-导入作业(文件------->导入------->常规------->文件系统------>浏览文件夹并完成导入。)

  • 现在以不同的方式运行它(运行------->运行配置------>)

    步骤a:-在Java小程序下创建新配置

    步骤b:-在Main下写主类stanford.karel.karel

    步骤3的**步骤b的图片

    步骤c:-在(x)下=程序参数中的参数写入代码=CollectNewspaperKarel

    步骤3的**步骤b的图片

    步骤d:-应用运行

  • 现在,最可爱的机器人卡雷尔来了

    第三步的图片]URL:-(i.stack.imgur.com/d8SAa.jpg)将http://。。。在这里,我只能发布两个超链接


  • 确保使用JRE6而不是JRE7


    要做到这一点,您不需要卸载JRE7和安装JR6。只需安装JRE6。在Eclipse中,转到窗口-->首选项-->Java-->安装的JRE。将路径添加到JRE6。在Run configuration中,选择Alternate JRE to jre6。

    可能仅适用于Juno Eclipse,但我还必须选中Run configuration主选项卡中的“搜索主类时包含继承的主类”复选框。。。对话

    public class StoneMasonKarel extends SuperKarel {
        public static void main(String[] args) {
            stanford.karel.Karel.main(new String[] { "code="
                    + StoneMasonKarel.class.getCanonicalName() });
        }
        public void run() {
        }
    }
    
    你需要Java6

    在Eclipse中:

  • 项目>>设置>>Java编译器:选择1.6
  • 右键单击运行按钮>>运行配置>>JRE选项卡>>警报本机JRE:选择/添加Java 6路径

  • 然后我为每个项目实现一个主方法,如上面的一个。对于每个重命名
    StoneMasonKarel.class
    ,不管您的类名是什么。

    只需安装JRE6即可。这对我来说很管用,什么也没做。只需安装JRE6并使用它进行编译。在project>properties>compiler

    中更改编译器类型在写这篇文章时,我刚刚弄明白了这一点,并写了一篇完整的博客文章来进一步解释它。下面是一个片段:

    “事情是这样的。你必须从Ubuntu软件中心(USC)下载OpenJDK6。你的计算机上可能已经有了它,但你还是应该查看USC以防万一。一旦有了它,回到Eclipse并打开Windows,Preferences,它应该直接打开到”Installed JRE“。”

    更多信息请访问:


    在这个网站上下载jre 6 for OSx:)

    我也有同样的问题,我在Ubuntu上运行Eclipse Neon,而不是斯坦福Eclipse。我错误地设置了论点的标签。确保正确设置跑步配置。

    请不要使用太多粗体。。。这很难读。另外,不要使用签名
    public class StoneMasonKarel extends SuperKarel {
        public static void main(String[] args) {
            stanford.karel.Karel.main(new String[] { "code="
                    + StoneMasonKarel.class.getCanonicalName() });
        }
        public void run() {
        }
    }