Как статическая переменная ведет себя по-разному в модуле Wildfly/JBoss?JAVA

Программисты JAVA общаются здесь
Ответить
Anonymous
 Как статическая переменная ведет себя по-разному в модуле Wildfly/JBoss?

Сообщение Anonymous »

В Wildfly/JBoss, если у вас есть статическая переменная, определенная в файле .jar внутри модуля, вы получите общий экземпляр этой переменной для всех .wars, которые используют этот jar из этого модуля. Однако если вы используете статическую переменную из .jar, находящегося в каждом .war, то каждое приложение (.war) получает свой собственный экземпляр этой переменной.
Это обсуждается в этом вопросе, и я также проверил это с помощью RedHat и фактически использовал это другое поведение в своих интересах, хотя я не получил объяснения, как и почему это работает.
Каков фактический механизм, который делает это возможным? Когда вы гуглите, как работает статическая переменная Java, вы найдете обсуждение того, как существует один экземпляр (и это подразумевает во всей JVM), но очевидно, что это не так, потому что я могу получить разное поведение в одной и той же JVM, но в разных .war-приложениях в JVM. Так что же на самом деле здесь происходит, чтобы объяснить разницу в поведении?

Подробнее здесь: https://stackoverflow.com/questions/766 ... dfly-jboss
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «JAVA»