Исключение в streamе “main” java.lang.NoSuchMethodError: main

когда я пытаюсь скомпилировать это:

public class Risk { } class territory { public static void main (String[]arg) { System.out.println ("hi") ; } } 

Я получаю это сообщение об ошибке:

 Exception in thread "main" java.lang.NoSuchMethodError: main 

Что здесь происходит?

Класс, содержащий функцию main() должен быть общедоступным, и вы можете определять только один открытый class для каждого файла. Вы захотите иметь два отдельных файла Risk.java и Territory.java .

Risk.java:

 public class Risk { } 

Territory.java:

 public class Territory { public static void main (String[]arg) { System.out.println ("hi") ; } } 

EDIT: Оказывается, это неверно – я смог запустить ваш исходный код с помощью следующей командной строки:

 java territory 

Но мои предыдущие комментарии указывают на лучшую практику для реального приложения, такого как игра с риском.

Какой class вы пытаетесь запустить? Если вы используете территорию classа, это будет работать. Risk нет main метода.

То, что ответ закончился, заключалось в том, что class, который я запускаю, должен содержать main иначе это не сработает. я публикую это, потому что, хотя другие ответы дают примерно ту же информацию, они не делают это явным.

Вы можете понять, почему этот пример вызывает ту же проблему?

 public class Simple { public void main(String args[]) { System.out.println("Inside function"); } } 

Ответ: потому что main () должен быть public static void!

Может быть, это просто вопрос? В исходном сообщении не отображается пробел между ‘]’ и ‘arg’.

Попробуй это:

 public static void main (String[] arg) 

или, если это все еще не работает:

 public static void main (String arg[]) 
  • Как обрабатывать возвращаемое значение из AsyncTask
  • Метод сравнения нарушает его общий контракт в Java 7
  • Calendar.getInstance (TimeZone.getTimeZone («UTC»)) не возвращает время UTC
  • Когда именно это безопасно для утечки для использования (анонимных) внутренних classов?
  • Android ClassNotFoundException
  • Какую библиотеку OCR Java я должен использовать в Android?
  • FirebaseApp с именем не существует
  • Наследование Java - переопределение переменных экземпляра
  • Android / Java - Опубликовать простой текст на стене Facebook?
  • Путь к ресурсу в нашей папке war / WEB-INF?
  • Почему значение 09 слишком велико для целого числа?
  • Interesting Posts
    Давайте будем гением компьютера.