Как заставить использование StringBuffer вместо StringBuilder по умолчанию в javac? - PullRequest
2 голосов
/ 26 апреля 2011

Я пытаюсь скомпилировать CLDC с KVM на Linux, я получаю ошибку

не может получить доступ к файлу класса java.lang.StringBuilder для java.lang.StringBuilder не найден

при утверждении:

return getClass().getName() + "@" + Integer.toHexString(hashCode());

Я думаю, это потому, что здесь используется собственный путь загрузки, который содержит StringBuffer, но не StringBuilder. Теперь, как заставить javac использовать StringBuffer вместо значения по умолчанию StringBuilder?

Моя среда разработки: Ubuntu 10.04.2 LTS + javac 1.6.0_24 (sun-java6-jdk)

Ответы [ 2 ]

2 голосов
/ 27 апреля 2011

Пройдя еще несколько поисков, я обнаружил, что можно установить целевую спецификацию jsr с параметром -target равной javac. Чтобы исправить мою проблему, мне пришлось вернуться к jsr14, чтобы выдавать StringBuffer вместо StringBuilder.

javac -target jsr14 * .java

Подробнее об этом здесь: http://twit88.com/blog/2008/08/26/java-understanding-jsr14/

2 голосов
/ 26 апреля 2011

Вы можете попробовать установить уровень источника и объекта равным 1,3 или любой другой версин без StringBuilder.

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