如何编译几个相互依赖的java文件?

如何编译几个相互依赖的java文件?,java,class,compilation,javac,Java,Class,Compilation,Javac,我几乎没有java文件Main.java使用Picture.java文件中的Picture类。我想知道如何从命令行编译和运行Main 下面是Main.java: package com.company; import javax.imageio.ImageIO; import java.awt.*; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; public clas

我几乎没有java文件
Main.java
使用
Picture.java
文件中的
Picture
类。我想知道如何从命令行编译和运行Main

下面是
Main.java

package com.company;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class Main {
    static Picture pic = null; // Picture class ???

    public static void main(String[] args) {
        long t1, t2;
        String name = "bears.jpg";

        pic = new Picture(name);
        t1 = System.nanoTime();

        pic.new_img = meanFilter(pic.img);

        t2 = System.nanoTime();
        pic.writeImage();
        calculateTime(t1, t2);
    }
...
public class Picture {

    public BufferedImage img;
    public BufferedImage new_img;
    ...
Picture.java

package com.company;

import javax.imageio.ImageIO;
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
import java.io.IOException;

public class Main {
    static Picture pic = null; // Picture class ???

    public static void main(String[] args) {
        long t1, t2;
        String name = "bears.jpg";

        pic = new Picture(name);
        t1 = System.nanoTime();

        pic.new_img = meanFilter(pic.img);

        t2 = System.nanoTime();
        pic.writeImage();
        calculateTime(t1, t2);
    }
...
public class Picture {

    public BufferedImage img;
    public BufferedImage new_img;
    ...

假设两个类位于同一目录中,请使用:

javac Picture.java Main.java
这样,依赖类(
Picture.java
)在
Main.java

要运行它,您需要指定整个包结构,并从
src
目录运行它:

java com.company.Main

假设两个类位于同一目录中,请使用:

javac Picture.java Main.java
这样,依赖类(
Picture.java
)在
Main.java

要运行它,您需要指定整个包结构,并从
src
目录运行它:

java com.company.Main

您需要指定整个包

尝试运行以下命令:

javac com.company.Picture.java com.company.Main.java

您需要指定整个包

尝试运行以下命令:

javac com.company.Picture.java com.company.Main.java

只要用一个
javac
调用编译所有这些类,编译器就会为您处理。只要用一个
javac
调用编译所有这些类,编译器就会为您处理。错误:找不到或加载main类main?我已经编辑了我的答案。要运行它,您需要指定整个包结构,并从
src
目录运行它。谢谢你的回答。如果你能告诉我,如果我有一些图像要处理,我应该把它放在哪里?Picture类只将文件名作为字符串,所有图像都在com\company文件夹中谢谢。约定将它们放在
src/main/resources
下。错误:无法找到或加载main类main?我已编辑了答案。要运行它,您需要指定整个包结构,并从
src
目录运行它。谢谢你的回答。如果你能告诉我,如果我有一些图像要处理,我应该把它放在哪里?Picture类只将文件名作为字符串,所有图像都在com\company文件夹中谢谢。惯例是将它们放在
src/main/resources
下。