2013-03-28 2 views
0

это говорит об исключении его потока «main» java.lang.noclassdeffounderror: за ним следуют тринадцать строк «в java».исключение в потоке «main» с java.lang.noclassdeffounderror

ive попробовал самые распространенные способы решения этой ошибки, im совершенно новый для java, и это сводит меня с ума! его очень обескураживает. :(Я изменил переменную среды «classpath» на «.» и скопировал правильный путь (C: \ Program Files \ Java \ jdk1.7.0_17 \ bin) к переменной «path». Я не думаю, что это Я даже попробовал это на другом компьютере с точно такими же результатами (после того, как я изменил переменные среды). И я загрузил код с сайта «fordummies», поэтому я не думаю, что его плохой код ... Ive провел последние 4 часов исследующие это, я думаю, пришло время обратиться к специалистам за советом :) :)

// This program prompts for information about a loan and 
// computes the monthly loan payment. 

import java.util.*; // for Scanner 

public class Mortgage { 
    public static void main(String[] args) { 
     Scanner console = new Scanner(System.in); 

     // obtain values 
     System.out.println("This program computes monthly " + 
          "loan payments."); 
     System.out.print("loan amount  : "); 
     double loan = console.nextDouble(); 
     System.out.print("number of years : "); 
     int years = console.nextInt(); 
     System.out.print("interest rate : "); 
     double rate = console.nextDouble(); 
     System.out.println(); 

     // compute result and report 
     int n = 12 * years; 
     double c = rate/12.0/100.0; 
     double payment = loan * c * Math.pow(1 + c, n)/
         (Math.pow(1 + c, n) - 1); 
     System.out.println("payment = $" + (int) payment); 
    } 
} 

ОШИБКА IS:

at java.net.URLClassLoader$1.run(Unknown Source) 
    at java.net.URLClassLoader$1.run(unknown Source) 
    at java.security.AccessController.DoPrivileged(Native Method) 
    at java.net.URLClassLoader.findClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) 
    at java.lang.ClassLoader.loadClass(Unknown Source) 
    at sun.launcher.LauncherHelper.checkAndLoadMain(Unknown Source) 
+4

Пожалуйста, покажите * точно *, что сообщение об ошибке, и * точно *, как вы пытаетесь запустить его. –

+0

Какие команды вы используете в командной строке? –

+0

Возможный дубликат [Почему я получаю NoClassDefFoundError в Java?] (Http://stackoverflow.com/questions/34413/why-am-i-getting-a-noclassdeffounderror-in-java) –

ответ

1

Обратите внимание, что Java чувствителен к регистру, в том числе ар которые используются в командной строке. Я предполагаю, что вы запускаете вашу программу неправильно с

java mortgage

Так как ваше имя класса Mortgage, вы должны использовать ту же самую капитализацию:

java Mortgage

Обратите внимание, что программа java ожидает имя класс, который содержит метод main(). Из-за этого капитализация должна соответствовать тому, что вы указали в своем коде.

0

Я не знаю, если это проблема, но стоит попробовать.

Во-первых (это то, что я не уверен), я думаю, что вместо того, чтобы:

public static void main(String[] args)

Я думаю, что вы должны иметь:

public static void main(String args[]){} 

Другое дело убедитесь, что у вас есть файл manifest.txt, если вы делаете свою программу Jar-файлом. Some information on Jar manifest files.

Смежные вопросы