#java #jar #javac
Вопрос:
Я хочу скомпилировать Entry.java который импортирует БАНКУ утилит.
Я пытаюсь запустить javac
Entry.java
файл, чтобы создать его класс. Но каждый раз я получаю package utilities does not exist
ошибку. Я попробовал эту команду из папки проекта, но она не сработала: javac .mainEntry.java
.
Структура каталогов такова:
- Проект
- Manifest.txt
- Главная
- Entry.java
- Служебные программы
- Utilities.jar
Entry.java это простая утилита для импорта файлов (файл JAR):
package main;
import utilities.Utilities;
public class Entry{
public static void main(String[] args){
System.out.println(Utilities.word());
}
}
Служебные программы.в java есть только метод, который возвращает строку:
package utilities;
public class Utilities{
public static String word (){
return "Utilities";
}
}
Если я правильно понял, если я запущу javac
из верхнего каталога (называемого Project), все подкаталоги будут в ПУТИ к классам, поэтому мне здесь не нужно -cp
. Мне это понадобится, если я запущу javac
из главного каталога.
(Но я все равно пытался. Но javac -cp .utilitiesUtilities.jar .Entry.java
это тоже не сработало)
Итак, проблема в импорте или я на самом деле не понимал, как работать с файлами JAR.
Или ничего из вышеперечисленного.
Комментарии:
1. Я заметил, что вы вызываете класс
Utilities
, а неUtils
также, когда вы запускаете Javac, он не создает jar, только классы2. Пожалуйста, проверьте
Utils
-> >Utilities
путаница. ВMain
том , на что вы ссылаетесьUtils
, вы упоминаете aUtils.java
, но код, который вы опубликовали, определяет aUtilities
.3. Ты был прав. Я исправляю имена. Я по ошибке скопировал старый файл. Возможно, я плохо выразился. Я хочу создать банку проекта, но перед этим шагом у меня возникла проблема. Я не могу создать файл класса Entry.java
4. Я немного переформулировал вопрос