【发布时间】:2017-02-07 04:00:56
【问题描述】:
我在终端中有这个。当我从主目录调用它时,没有问题,它工作得很好。但是当我把它放到一个子目录 CPS3498 并编译它时没有错误。当我尝试使用java home/student/pshivam/CPS3498/encrypt 运行程序时,它给了我这个错误
Exception in thread "main" java.lang.NoClassDefFoundError: /home/student/pshivam/CPS3498/encrypt
Caused by: java.lang.ClassNotFoundException: .home.student.pshivam.CPS3498.encrypt
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:306)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301)
at java.lang.ClassLoader.loadClass(ClassLoader.java:247)
Could not find the main class: /home/student/pshivam/CPS3498/encrypt. Program will exit
代码如下。
import java.lang.ClassNotFoundException;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class encrypt {
public static void main(String[] args) throws IOException {
try {
File file = new File("/home/student/pshivam/CPS3498/letter.txt");
FileReader fileReader = new FileReader(file);
BufferedReader bufferedReader = new BufferedReader(fileReader);
StringBuffer stringBuffer = new StringBuffer();
String line;
while ((line = bufferedReader.readLine()) != null) {
stringBuffer.append(line);
stringBuffer.append("\n");
}
fileReader.close();
for(int i = 0; i<stringBuffer.length(); i++){
int encrypt = 0;
encrypt = (int)stringBuffer.charAt(i);
encrypt = encrypt * 9;
stringBuffer.setCharAt(i, (char)encrypt);
File message = new File("/home/student/pshivam/CPS3498/secret.txt");
try
{
message.createNewFile();
FileWriter msgFile = new FileWriter(message);
BufferedWriter msgBuff = new BufferedWriter(msgFile);
msgBuff.write(stringBuffer.toString());
msgBuff.close();
}
finally
{
}
}
} finally{
}
}
}
【问题讨论】:
-
这个源文件有包吗?
-
@TimBiegeleisen 我没有包裹
-
我有另一个与此类似但只是解密的代码
标签: java subdirectory