Java 在Eclipse中生成但不在jar文件中的输出文件
我有一个简单的解析程序,它接受一些文件并将它们组合起来。然后,它生成一些输出文件到工作目录。当我在eclipse中运行这个程序时,它会生成所有必需的输出文件。然而,当我使用eclipse中生成的jar运行它时,它只创建三个输出文件中的两个。这让我觉得jar文件的生成方式有问题,但似乎找不到任何答案 我尝试过更新一些java,我相信它是用Java5编写的。我刚刚将向量更改为ArrayList,将FileOutputStream更改为FileWriter 我必须下载javax.mail以获得所需的库,并将这些jar文件添加到我在Eclipse中使用的java6库中。我尝试过删除类并生成新类。我试图检查jar文件的权限,以确保我可以访问它。我想我只是不知道从哪里开始 我还尝试将其打包为一个jar文件,而不是一个可运行的jar文件,因为它为我提供了更多关于包含内容的选项。然而,我不能运行这种类型的jar文件,即使它是一个可执行文件。我已经多次重新创建了jar文件,但没有任何运气 UTF-8在jar文件中显示不正确,但在eclipse中显示良好,这给人们带来了很多问题。然而,他们的jar文件生成了文本文件,而我的jar文件并没有生成文本文件 更新:有趣的是,如果我将代码块移动到它自己的类中,并将其作为一个单独的jar运行,它就会工作。所以现在的解决方案是有两个jar文件 这是未生成文件的代码:Java 在Eclipse中生成但不在jar文件中的输出文件,java,eclipse,Java,Eclipse,我有一个简单的解析程序,它接受一些文件并将它们组合起来。然后,它生成一些输出文件到工作目录。当我在eclipse中运行这个程序时,它会生成所有必需的输出文件。然而,当我使用eclipse中生成的jar运行它时,它只创建三个输出文件中的两个。这让我觉得jar文件的生成方式有问题,但似乎找不到任何答案 我尝试过更新一些java,我相信它是用Java5编写的。我刚刚将向量更改为ArrayList,将FileOutputStream更改为FileWriter 我必须下载javax.mail以获得所需的库
private static void parseCRNOnly() {
try {
//file to write to
File new_file = new File("CRNOnlyClean.txt");
FileWriter out = new FileWriter(new_file);
//file to read from
File file = new File("CRNOnly.txt");
FileReader reader = new FileReader(file);
BufferedReader buf = new BufferedReader(reader);
try{
String str;
String temp = "\r";
String nl = "\r\n";
String tab = "\t";
str = buf.readLine();
while (str != null && !str.isEmpty()) {
StringTokenizer tokenizer = new StringTokenizer(str," \t");
int column = 0;
while(tokenizer.hasMoreTokens()) {
column++;
temp = tokenizer.nextToken();
if(column == 8){
break;
}
out.write(temp);
out.write(tab);
}
out.write(nl);
str = buf.readLine();
}
out.close();
} catch(IOException e0){
System.out.println("Error Reading From CRNOnly.txt");
JOptionPane.showMessageDialog(null, "Error Reading From CRNOnly.txt");
}
} catch(FileNotFoundException e1){
System.out.println("File CRNOnly.txt Not Found");
JOptionPane.showMessageDialog(null, "File CRNOnly.txt Not Found");
} catch (IOException e) {
System.out.println("Error Reading from FileWriter");
JOptionPane.showMessageDialog(null, "Error Reading from FileWriter");
}
出于某种原因,jar文件没有包含一些我必须从javax.mail添加的旧库,因此我尝试使用netbeans生成jar文件,结果成功了。Netbeans也没有将javax.mail库打包到jar文件中,而是将它们与jar文件一起包含在一个文件中。因此,要使用JAR文件,这个文件也必须在目录中。那是一堵很难的文字墙。考虑删除无关的部分(如“我读博客,它没有帮助”)。抱歉,只是想把所有的信息都弄出来。这可能是我第一次在这里张贴,人们似乎不喜欢我原来的帖子,因为我没有发布足够的信息。我试着去研究它,所以这个静态方法从一个文件读取,然后写入另一个文件。是否有几种这样的方法,只有一种方法在eclipse中工作,而只有一种方法在eclipse中工作?当该方法不起作用时,是否有任何消息(来自异常处理)?