Java 无法找到或加载主类cmd

Java 无法找到或加载主类cmd,java,cmd,load,find,Java,Cmd,Load,Find,我用javac编译了一些示例代码,当我尝试运行它时,我得到了以下结果: C:\Users\Lenis>cd C:\Java\2D C:\Java\2D>java donut.board Error: Could not find or load main class donut.board 我试着编写“java-cp.donut.board”,但仍然得到了同样的结果 我的类路径是:“C:\ProgramFiles\Java\jdk1.7.0\U 02\lib\tools.jar;

我用javac编译了一些示例代码,当我尝试运行它时,我得到了以下结果:

C:\Users\Lenis>cd C:\Java\2D

C:\Java\2D>java donut.board
Error: Could not find or load main class donut.board
我试着编写“java-cp.donut.board”,但仍然得到了同样的结果

我的类路径是:“C:\ProgramFiles\Java\jdk1.7.0\U 02\lib\tools.jar;”

如何修复它

代码如下:

package donut;

import java.awt.BasicStroke;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.RenderingHints;
import java.awt.geom.AffineTransform;
import java.awt.geom.Ellipse2D;
import javax.swing.JPanel;

public class Board extends JPanel{

public void paint(Graphics g)
{
  super.paint(g);

  Graphics2D g2 = (Graphics2D) g;

  RenderingHints rh =
        new RenderingHints(RenderingHints.KEY_ANTIALIASING,
                           RenderingHints.VALUE_ANTIALIAS_ON);

  rh.put(RenderingHints.KEY_RENDERING,
         RenderingHints.VALUE_RENDER_QUALITY);

  g2.setRenderingHints(rh);

  Dimension size = getSize();
  double w = size.getWidth();
  double h = size.getHeight();

  Ellipse2D e = new Ellipse2D.Double(0, 0, 80, 130);
  g2.setStroke(new BasicStroke(1));
  g2.setColor(Color.gray);


  for (double deg = 0; deg < 360; deg += 5) {
      AffineTransform at =
          AffineTransform.getTranslateInstance(w / 2, h / 2);
      at.rotate(Math.toRadians(deg));
      g2.draw(at.createTransformedShape(e));
    }
}
}
包装甜甜圈;
导入java.awt.BasicStroke;
导入java.awt.Color;
导入java.awt.Dimension;
导入java.awt.Graphics;
导入java.awt.Graphics2D;
导入java.awt.RenderingHints;
导入java.awt.geom.AffineTransform;
导入java.awt.geom.Ellipse2D;
导入javax.swing.JPanel;
公共课程委员会扩展JPanel{
公共空间涂料(图g)
{
超级油漆(g);
图形2d g2=(图形2d)g;
渲染提示rh=
新的渲染提示(RenderingHints.KEY_抗锯齿,
RenderingHints.VALUE_ANTIALIAS_ON);
右侧放置(渲染提示.KEY_渲染,
渲染提示。值(渲染质量);
g2.设置渲染提示(右侧);
维度大小=getSize();
double w=size.getWidth();
双h=size.getHeight();
Ellipse2D e=新的Ellipse2D.Double(0,0,80,130);
g2.设定行程(新基本行程(1));
g2.设置颜色(颜色为灰色);
用于(双度=0;度<360;度+=5){
仿射变换=
仿射Transform.getTranslateInstance(w/2,h/2);
旋转时(数学托拉度(度));
g2.绘制(在createTransformedShape(e)处);
}
}
}

类中没有main方法,并且在调用时必须给donut.Board(大写B)区分大小写。添加main方法。

您在类中没有main方法,并且在调用时必须为donut.Board(大写B)指定它区分大小写。添加main方法。

你的类名
Board
以大写字母开头。

你的类名
Board
以大写字母开头。

将你的main方法包括在你的Board类中,你可以在这里看到一个简单的例子:

同时更改
java-cp。油炸圈饼.board
to
java-cp。甜甜圈板

正如您在下面的代码中所看到的,这个类本身不能做任何事情,这只是说你可以用自行车做什么,但你没有使用所有这些行为

 class Bicycle {
    int cadence = 0;
    int speed = 0;
    void changeCadence(int newValue) {
         cadence = newValue;
    }
    void speedUp(int increment) {
         speed = speed + increment;   
    }
    void applyBrakes(int decrement) {
         speed = speed - decrement;
    }
    void printStates() {
         System.out.println("cadence:" +
             cadence + " speed:" + 
             speed );
    }
} 
因此,如果你想使用这个类,你可以创建另一个包含main方法的类,现在你真正使用的是你在上一个类中给自行车的所有行为

class BicycleDemo {
    public static void main(String[] args) {
       Bicycle bike1 = new Bicycle();
        Bicycle bike2 = new Bicycle();

        bike1.changeCadence(50);
        bike1.speedUp(10);
        bike1.printStates();

        bike2.changeCadence(50);
        bike2.speedUp(10);
        bike2.changeCadence(40);
        bike2.speedUp(10);
        bike2.printStates();
    }
}

将main方法包括在Board类中,您可以在此处看到一个简单的示例:

同时更改
java-cp。油炸圈饼.board
to
java-cp。甜甜圈板

正如您在下面的代码中所看到的,这个类本身不能做任何事情,这只是说你可以用自行车做什么,但你没有使用所有这些行为

 class Bicycle {
    int cadence = 0;
    int speed = 0;
    void changeCadence(int newValue) {
         cadence = newValue;
    }
    void speedUp(int increment) {
         speed = speed + increment;   
    }
    void applyBrakes(int decrement) {
         speed = speed - decrement;
    }
    void printStates() {
         System.out.println("cadence:" +
             cadence + " speed:" + 
             speed );
    }
} 
因此,如果你想使用这个类,你可以创建另一个包含main方法的类,现在你真正使用的是你在上一个类中给自行车的所有行为

class BicycleDemo {
    public static void main(String[] args) {
       Bicycle bike1 = new Bicycle();
        Bicycle bike2 = new Bicycle();

        bike1.changeCadence(50);
        bike1.speedUp(10);
        bike1.printStates();

        bike2.changeCadence(50);
        bike2.speedUp(10);
        bike2.changeCadence(40);
        bike2.speedUp(10);
        bike2.printStates();
    }
}

虽然此链接可以回答问题,但最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能会无效。@Rick感谢您的评论,我将添加一些代码来改进答案:)虽然此链接可能会回答问题,但最好在此处包含答案的基本部分,并提供链接供参考。如果链接页面发生更改,仅链接的答案可能会无效。@Rick谢谢您的评论,我将添加一些代码来改进答案:)