找不到主类 Java



我有两个类Pair.javaUsers.java,其中Users.java有主程序。这两个 java 文件都在包userdetails 下。

在 unix 中,我使用命令编译了它

javac -d . -classpath avro-1.7.5.jar:lib/*:jackson-core-asl-1.9.13.jar:lib/* Pair.java Users.java

该类位于"用户详细信息"文件夹下。我尝试使用命令运行

java  -classpath avro-1.7.5.jar:lib/*:jackson-core-asl-1.9.13.jar:lib/* userdetails.Users

我收到错误

找不到主类用户详细信息。用户

请帮助我。

源代码 :-

import java.io.File; 
import java.io.IOException; 
import org.apache.avro.file.DataFileReader; 
import org.apache.avro.file.DataFileWriter; 
import org.apache.avro.io.DatumReader; 
import org.apache.avro.io.DatumWriter; 
import org.apache.avro.specific.SpecificDatumReader; 
import org.apache.avro.specific.SpecificDatumWriter; 
import org.apache.avro.util.Utf8;
public class Users {
 public void createUser() {
            userdetails.Pair datum = new userdetails.Pair(new Utf8("L"), new Utf8("R"));
            DatumWriter writer = new SpecificDatumWriter();
            DataFileWriter fileWriter = new DataFileWriter(writer);

            try {
                    fileWriter.create(datum.getSchema(), new File("users.avro"));
                    fileWriter.append(datum);
                    System.out.println(datum);
                    fileWriter.close();
            } catch (Exception e) {
                    // TODO Auto-generated catch block
                    System.out.println("ERROR");
                    e.printStackTrace();
            }         }
    public static void main(String[] args) {
            Users user = new Users();
            user.createUser();
    }
}

指定类路径时,当前工作目录不再自动包含,因此必须将其添加到类路径中:

java  -classpath avro-1.7.5.jar:lib/*:jackson-core-asl-1.9.13.jar:lib/*:. userdetails.Users

你说这两个类都在包"userdetails"下,但源代码的开头没有包声明。Pair.javaUser.java都应以以下行开头:

package userdetails;

查看 Java 包教程

相关内容

  • 没有找到相关文章

最新更新