Java 通过ant clean dist执行jar-以不同的名称出现?

Java 通过ant clean dist执行jar-以不同的名称出现?,java,hadoop,ant,jar,build.xml,Java,Hadoop,Ant,Jar,Build.xml,我正在使用hadoop,需要从/src文件中的所有类组合创建一个.jar文件。每次我尝试创建它时,它都会出现在WordCount.jar下,而不是我在下面的代码中声明的Twitter.jar下: 导入java.util.array; 导入org.apache.commons.lang.StringUtils; 导入org.apache.hadoop.conf.Configuration; 导入org.apache.hadoop.fs.Path; 导入org.apache.hadoop.io.N

我正在使用hadoop,需要从/src文件中的所有类组合创建一个.jar文件。每次我尝试创建它时,它都会出现在WordCount.jar下,而不是我在下面的代码中声明的Twitter.jar下:

导入java.util.array; 导入org.apache.commons.lang.StringUtils; 导入org.apache.hadoop.conf.Configuration; 导入org.apache.hadoop.fs.Path; 导入org.apache.hadoop.io.NullWritable; 导入org.apache.hadoop.io.Text; 导入org.apache.hadoop.mapreduce.Job; 导入org.apache.hadoop.mapreduce.lib.input.FileInputFormat; 导入org.apache.hadoop.mapreduce.lib.output.FileOutputFormat; 公共类推特{ 公共静态无效runJobString[]输入,字符串输出引发异常{ 配置conf=新配置; Job Job=新Jobconf; job.setJarByClassTwitter.class; job.setReducerClassTwitterReducer.class; job.setMapperClassTwitterMapper.class; job.setOutputKeyClassText.class; job.setOutputValueClassNullWritable.class; job.setMapOutputKeyClassText.class; job.setMapOutputValueClassNullWritable.class; 路径输出路径=新的病理输出; FileInputFormat.setInputPathsjob,StringUtils.joininput,; FileOutputFormat.setOutputPathjob,outputPath; outputPath.getFileSystemconf.deleteoutputPath,true; job.waitForCompletiontrue; } 公共静态无效主字符串[]args引发异常{ runjobarries.copyOfRangeargs,0,args.length-1,args[args.length-1]; }
} Jar文件的名称与其中类的名称无关。您需要检查Ant构建文件,特别是创建jar的目标。创建Jar文件的Ant任务通常是任务,文件名可以通过destfile属性指定。

您的类称为Twitter,但这并不意味着.Jar必须具有此名称。。。.jar名称可能是在build.xml中的jar创建任务中定义的。你能分享一下吗?我不知道,因为这是我第一次使用这样的文件!成功了,谢谢!