Безопасно ли строить с Java 32bit, если другие банки, где скомпилированы с 64bit? - PullRequest
1 голос
/ 22 февраля 2012

У меня была 64-битная система для создания Java-проекта.На данный момент я застрял на 32-разрядной машине.Будет ли байт-код отличаться при использовании javac x32 и javac x64.т.е. мне нужно отправить исправление ошибки, и я не уверен, что могу отправить файл jar, скомпилированный с javac x32, если все остальные jar были скомпилированы с x64.не совсем уверен.

совместимость с java-32-bit-vs-64-bit

Ответы [ 2 ]

4 голосов
/ 22 февраля 2012

Он должен работать идеально, как уже упоминалось в ответе, который вы связали. Java Bytecode полностью независим от платформы

1 голос
/ 22 февраля 2012

Как и ссылка, и все остальные говорили: все будет хорошо.

Вас может смущать разница между JIT-компилятором и javac -компилятором .JIT-компилятор является частью виртуальной машины - в отличие от javac - и имеет разные настройки по умолчанию на 32- и 64-битных Windows-машинах.Это будет влиять на производительность, такую ​​как скорость выполнения и использование памяти, когда выполняется байт-код - скомпилированный javac -, но это не влияет на совместимость кода, скомпилированного javac.Вывод javac с волей на любую совместимую JVM.


Глядя на ваши комментарии, я думаю, что эта информация тоже может вам помочь: код Java вызывает .dll /.просто с помощью вызова метода с модификатором native, как в public native byte[] doFoo(byte[] img);.Как правило, эти методы имеют одинаковое поведение во всех системах, а некоторые поведения не определены (см. FileChannel).Если проект, для которого вы предоставили исправление, не является действительно странным, Java почти всегда не зависит от системы, то есть код Java only имеет дело с независимым от системы поведением.Вы должны редко видеть исходный код Java, который делает разные вещи в разных системах.Если вы написали только код Java, ваше исправление должно работать во всех системах, в которых развернут проект.Но нет гарантии.Посмотрите в документации все классы и методы, которые вы использовали, чтобы убедиться, что они полностью абстрагируют операционную систему от исходного кода Java.

...