我一直在做的IntelliJ IDEA社区版14 IDE中编码的运动,使用OpenJDK的。
该项目被划分在同一个包超过4 .java文件全部。我的最终目标是在终端/ bash的运行这个(我用System.console()的readLine()的犯规在IDE的控制台发挥很好)。
我试图浏览到这4个文件所在的目录(他们都住在同一个目录),并尝试:
javac -classpath . BibliotecaApp.java Book.java BookManager.java LibraryDB.java
这将创建4对应的.class文件的罚款。主要就是在bibliotecaApp.java/class,所以我尝试运行它:
java BibliotecaApp
但我得到的错误
Exception in thread "main" java.lang.NoClassDefFoundError: BibliotecaApp (wrong name: com/twu/biblioteca/BibliotecaApp)
加上约13细节的线条。
现在,谷歌搜索这个错误似乎是一个类路径的问题,这是我卡住。从我读过的地方,usingecho $PATH
给我:
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
这仍然是从上面的.java文件的目录。这条道路对我毫无意义。我不知道它是什么或做什么的,甚至是类路径是什么!即使世界资源的很多在那里上设置classpath中,但他们没有帮助我,因为我不知道它的意思了做。
这对我来说是死路一条。我试图创建一个.jar而不是使用IDEA的Build Artifacts
所看到HERE。它创建了一个.jar文件,但是当我浏览到该目录,并尝试通过运行它:
java -jar biblioteca_jar
我得到
Error: Invalid or corrupt jarfile biblioteca_jar
另一个问题是,在文件浏览器,该文件实际上出来为biblioteca.jar,但对DIR LS显示biblioteca_jar。那是正常的吗?
该代码是在我的GitHub上,是否可以帮助任何https://github.com/botagar/twu-biblioteca-JohnGeddes
根据你的编译器步,改变该
java BibliotecaApp
至
java -cp . BibliotecaApp
将当前目录添加到类路径的Java运行时环境。也请参阅Oracle技术说明Setting the Class Path。
一个JAR文件是一种压缩的,并且应该有一个.jar
扩展。所以这
java -jar biblioteca_jar
也许应该是
java -jar biblioteca.jar
你可以检查该文件是否与任何zip压缩包读卡器有效。包括罐子本身,
jar tvvf biblioteca.jar
编辑
根据您在下面的意见,
cd ~/Documents/ThoughtWorks Uni/TWU_Biblioteca-master/src/
接着
java -cp . com.twu.biblioteca.BibliotecaApp