Компиляция и запуск Java-программы на Mac - PullRequest
0 голосов
/ 19 января 2012

Это очень простой вопрос, но я нигде не смог найти ответ. Я совершенно новичок в Java.

На github есть программа на Java, которую я пытаюсь запустить на своем Mac. Соответствующая документация не дает никакой информации о компиляции или запуске кода. Я бы предпочел не раскрывать более подробно конкретную программу, которую я пытаюсь запустить.

Программа содержит несколько файлов .java и файл classmexer.jar для отслеживания использования памяти. Существует также подпапка cern, которая содержит дополнительные подпапки, которые в конечном итоге содержат .class файлы. Makefile не существует.

Я скачал весь исходный код в виде файла tar.gz и развернул его в ~/codeDirectory/. Когда я пытаюсь скомпилировать из этого каталога с

$ javac *.java

или

$ javac A.java

(где A.java - первый класс, который вызывает программа), я получаю десятки ошибок компиляции. Этот код явно компилируется в другом месте, поэтому я не уверен, что с этим делать.

Первая ошибка, которая появляется

A.java:5: cannot access cern.colt.function.DoubleFunction
class file for cern.colt.function.DoubleFunction not found
    cern.jet.random.AbstractDistribution.makeDefaultGenerator();
                                        ^
./B.java:4: package com.javamex.classmexer does not exist
import com.javamex.classmexer.*;
^
./B.java:180: cannot find symbol
symbol  : variable MemoryUtil
location: class B
        long noBytes = MemoryUtil.deepMemoryUsageOf(hp);
                       ^

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

Заранее спасибо за помощь в устранении неполадок.

Ответы [ 2 ]

4 голосов
/ 19 января 2012

Если вы загрузили Java-программу с github, то почти наверняка она поставляется с build.xml для использования с Apache Ant или pom.xml для использования с Apache Maven, или каким-либо другим файлом для использования с какой-либо другой сборкойинструмент.Как правило, база кода на github содержит документацию, в которой рассказывается, какой инструмент использовать и как его использовать.

0 голосов
/ 20 января 2012

Программа, которую я пытался запустить, была неполной и не включала исходный код для двух зависимостей (включая colt, который компилятор отмечал выше).Спасибо Anony-Mousse за предложение этого варианта.Установка всего необходимого исходного кода решила проблему;разработчик также обновил файлы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...