java 编译中文件名和类名不一致的问题
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 编译中文件名和类名不一致的问题相关的知识,希望对你有一定的参考价值。
我写了个编译好的自定义的jar包a.jar(可以运行,没有问题)
在其他程序java程序b中引用它
在red flag上编译b时会报a中文件名和类名不一致
报错的信息如:a.XmlParse.java:XmlParse类应该保存在XmlParse.java中
很奇怪的错误它的错误信息中文件名和类名都是相同的,还报错。
此外在windows上编译b不会出错,可以正常运行
希望有高手指教
谢谢
我的java文件名是大写
文件中也只有一个public类
类名和文件名也是相同的
在windows下面是没有问题的
在linux下就出文件名和类名不同的错误了
奇怪啊
文件名为:HelloJava.java
文件内容:
public class HelloJava
public static void main(String[] args)
System.out.println("HelloJava!");
方式二:文件名和类名不一致
文件名为:HelloJava.java
文件内容:
class Hello
public static void main(String[] args)
System.out.println("Hello!");
注意:文件名与类名一致的时候,public class XXX,public是必须的 ,不一致的时候无需写public 参考技术B java文件的名字要和文件中public类的名字保持一致,并且一个文件中可以有多个类,但有且只能有一个public类型的类本回答被提问者和网友采纳 参考技术C 你在Linux下是否隐藏了文件扩展名 也许你的文件名是XmlParse.java.java 参考技术D 可能是目录结构不正确,你最好能发布一下你的源代码 第5个回答 2009-04-17 我郁闷了。。java文件名开头文件必须要是大写这个应该知道吧
java运行的问题
一般的java都是要求文件名和类名一致,但是也可以不一样只是编译和运行的名字不一样而已。
比如:java文件:test.java:
public class helloworld {
public static void main(String[] args){
System.out.println("hello,world");
}
}
在都是运行的命令为:
javac test.java
java helloworld
以上是关于java 编译中文件名和类名不一致的问题的主要内容,如果未能解决你的问题,请参考以下文章