Я новичок в Java и в IDE затмения.
Я использую Eclipse
Eclipse SDK
Версия: 3.7.1
Идентификатор сборки: M20110909-1335
На машине с Windows Vista.
Я пытаюсь извлечь уроки из книги «Мышление в Java vol4».
Автор использует свои собственные пакеты для уменьшения набора текста. Однако автор не использовал Eclipse, и именно здесь проблема возникает в ..
Это пример кода в книге.
import java.util.*;
import static net.mindview.util.print.*;
public class HelloWorld {
public static void main(String[] args) {
System.out.println("hello world");
print("this does not work");
}
это содержимое print.Java
//: net/mindview/util/Print.java
// Print methods that can be used without
// qualifiers, using Java SE5 static imports:
package net.mindview.util;
import java.io.*;
public class Print {
// Print with a newline:
public static void print(Object obj) {
System.out.println(obj);
}
// Print a newline by itself:
public static void print() {
System.out.println();
}
// Print with no line break:
public static void printnb(Object obj) {
System.out.print(obj);
}
// The new Java SE5 printf() (from C):
public static PrintStream
printf(String format, Object... args) {
return System.out.printf(format, args);
}
} ///:~
Ошибка, которую я получаю больше всего, заключается в утверждении.
Import static net.mindview.util.print.*;
На этом этапе Eclipse IDE говорит, что не может разрешить net
также на
print("this does not work");
Eclipse IDE сообщает, что класс print () не существует для класса HelloWorld.
Я пытался заставить их работать, но с ограниченным успехом. Автор использует еще 32 из этих пакетов в остальной части книги.
Я пытался добавить каталог в classpath, но, похоже, это работает, только если вы используете компилятор JDK. Я попытался добавить их как библиотеки, и я попытался импортировать их в пакет в исходном файле в проекте. Я попробовал несколько других вещей, но не могу вспомнить их все сейчас.
Мне удалось заставить один из файлов работать, файл print.java, для которого я дал листинг в этом сообщении. Я сделал это, создав новую исходную папку, затем создав новый пакет в этой папке и импортировав файл print.java в пакет.
Но в следующий раз, когда я попробую то же самое, у меня ничего не получится.
Мне нужен способ, чтобы затмение загружало все эти файлы .java при запуске, поэтому, когда они понадобятся мне для упражнений в книге, они будут там и будут работать на меня, или просто простой способ заставить их работать каждый раз.
Я знаю, что я не единственный, у кого возникла эта проблема. Я видел другие вопросы об этом в поиске в Google, и они также спрашивали о книге «Мышление в Java».
Я искал этот сайт и другие, и мне просто не повезло.
Любая помощь с этим или sugestions приветствуются и очень ценятся.
спасибо
Хорошо, я попытался заставить это работать, как вы сказали, я запустил новый проект и удалил статический элемент из оператора импорта, затем я создал новую исходную папку, затем я создал новый пакет в исходной папке. Затем я импортировал файловую систему и выбрал папку net.mindview.util.
Теперь оператор immport больше не выдаёт мне ошибку. Но оператор print делает единственный способ заставить оператор print работать, используя его полностью определенное имя. Вот код.
import net.mindview.util.*;
public class Hello2 {
public static void main(String[] args) {
Hello2 test = new Hello2();
System.out.println();
print("this dooes not work");
net.mindview.util.Print.print("this stinks");
}
}
Ошибка в операторе печати:
Метод print (String) не определен для типа Hello2
и если я попытаюсь запустить его, я получу следующую ошибку:
Исключение в потоке "main" java.lang.Error: Нерешенная проблема компиляции:
Метод print (String) не определен для типа Hello2
at Hello2.main(Hello2.java:6)
Statement ::::: net.mindview.util.Print.print ("this stinks") является полностью квалифицированным оператором print, и он не выдает ошибку, но полностью уничтожает цель print.java. файл..
Если у вас есть какие-либо вопросы, пожалуйста, спросите, я перезвоню вам, как только смогу.