我正在关注的教科书中提供了以下程序。它应该使用Point2D类计算两个坐标(x1,y1)和(x2,y2)之间的距离:
import java.util.Scanner;
import javafx.geometry.Point2D;
public class TestPoint2D {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.print("Enter point1's x-, y-coordinates");
double x1 = input.nextDouble();
double y1 = input.nextDouble();
System.out.print("Enter point2's x-, y coordinates");
double x2 = input.nextDouble();
double y2 = input.nextDouble();
Point2D p1 = new Point2D(x1, y2);
Point2D p2 = new Point2D(x2, y2);
System.out.println("p1 is " + p1.toString());
System.out.println("p2 is " + p2.toString());
System.out.println("The distance between p1 and p2 is " +
p1.distance(p2));
}
}
我已经多次查看了它,并确保它被正确复制。当我尝试在终端中编译程序时,收到以下错误消息:
import javafx.geometry.Point2D;
^
TestPoint2D.java:15: error: cannot find symbol
Point2D p1 = new Point2D(x1, y2);
^
symbol: class Point2D
location: class TestPoint2D
TestPoint2D.java:15: error: cannot find symbol
Point2D p1 = new Point2D(x1, y2);
^
symbol: class Point2D
location: class TestPoint2D
TestPoint2D.java:16: error: cannot find symbol
Point2D p2 = new Point2D(x2, y2);
^
symbol: class Point2D
location: class TestPoint2D
TestPoint2D.java:16: error: cannot find symbol
Point2D p2 = new Point2D(x2, y2);
^
symbol: class Point2D
location: class TestPoint2D
5 errors
为什么程序不能识别新的Point2D对象?
答案 0 :(得分:2)
你缺少的是JavaFX运行时jar的jar,请参考SO上的这个问题 What's the location of the JavaFX runtime JAR file, jfxrt.jar, on Linux?
它提供了有关Java 7和8中jfxrt.jar位置的详细说明。
希望这会有所帮助!!