Я создаю кое-что на Java, которое использует Wolfram | Alpha для создания интегралов. Я загрузил Wolfram API, и он поставляется с образцом программы, который вы можете использовать, чтобы нарисовать материал. Here's that at GitHub.Как определить зависимые библиотеки, которые мне нужны
Там есть часть в комментариях, что говорит:
* To compile or run this program you will need the following dependent
* libraries on your classpath (including WolframAlpha.jar, of course):
*
* commons-codec-1.3.jar
* httpclient-4.0.1.jar
* httpcore-4.0.1.jar
* commons-logging.jar
... и я понятия не имею, как это сделать. Я использую этот проект как способ изучения Java, поэтому я пропускаю кучу основополагающих принципов сна.
Являются ли эти библиотеки доступными в ванильной Java-установке или мне нужно забрать их из других источников? Я хочу, чтобы не загружать мою систему избыточным материалом.
Когда я пытаюсь запустить скрипт без загрузки этих библиотек, он заканчивается ошибкой, предсказуемо. Вот сообщение об ошибке:
Exception in thread "main" java.lang.NoClassDefFoundError: org/apache/http/conn/scheme/SocketFactory
at com.wolfram.alpha.net.HttpProviderFactory.getDefaultHttpProvider(HttpProviderFactory.java:18)
at com.wolfram.alpha.WAEngine.<init>(WAEngine.java:36)
at simpleSample.main(simpleSample.java:58)
Caused by: java.lang.ClassNotFoundException: org.apache.http.conn.scheme.SocketFactory
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)
... 3 more
Я использую Eclipse в качестве моей IDE. Я не думаю, что это имеет значение здесь, но это может быть.
@Jens Я согласен, что эта проблема была решена в другом месте. К сожалению, это не похоже на дубликат, как вы его отметили. –
Пожалуйста, посмотрите [здесь] (http://stackoverflow.com/questions/9395207/how-to-include-jar-files-with-java-file-and-compile-in-command-prompt), чтобы получить вас начал. Вы также можете изучить проект Maven для обработки ваших зависимостей. –
«Я пропускаю кучу сон-индуцирующих основ», но теперь эти сна, вызывая основы, дают вам головную боль. Возможно, вам стоит начать с вызова 'java -h' и посмотреть опцию' -classpath'. – SpaceTrucker