2017-01-13 3 views
0

Я строю банку, и я использую эту банку в одном из моих .war. Когда я запускаю программу, я получаю следующее исключение. Но в этом файле jar этот класс есть.В java runtime, class not found exception

Error: java.lang.RuntimeException: java.lang.ClassNotFoundException: Class com.itc.zeas.custominputformat.CustomTextInputFormat not found 
    at org.apache.hadoop.conf.Configuration.getClass(Configuration.java:2195) 
    at org.apache.hadoop.mapreduce.task.JobContextImpl.getInputFormatClass(JobContextImpl.java:174) 
    at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:749) 
    at org.apache.hadoop.mapred.MapTask.run(MapTask.java:341) 
    at org.apache.hadoop.mapred.YarnChild$2.run(YarnChild.java:168) 
    at java.security.AccessController.doPrivileged(Native Method) 
    at 

ответ

0

Быстрый поиск повернулся this вверх.

Ваш путь к классу поврежден (что является очень распространенной проблемой в мире Java).

В зависимости от того, как вы начинаете свое приложение, вам необходимо пересмотреть аргумент -cp, свою запись в Class-Path в файле MANIFEST.MF или на вашем диске.

Возможно, вам следует разместить больше информации? Какие инструменты вы используете для разработки программы, какие параметры при компиляции и т. Д.

+0

в том же банке, файл другого класса работает и в том же пакете. Но этот CustomTextInputFormat.class не найден –

+0

Вы уверены, что правильно ссылаетесь на класс? Не могли бы вы проверить, действительно ли класс находится в 'com.itc.zeas.custominputformat.CustomTextInputFormat'? – Titulum

+0

Да, класс точно находится внутри одного и того же пути. И im также использует полное имя класса. –