Bingo. Eu consegui definir o fuso horário do tomcat para UTC. Em bin / catalina.sh, adicionei CATALINA_OPTS=-Duser.timezone=UTC
Para executar meu aplicativo da web, preciso definir meu fuso horário como UTC no meu MacBook. Eu posso fazer isso temporariamente abrindo um Konsole e entrando
sudo ln -sf /usr/share/zoneinfo/UTC /etc/localtime
No entanto, meu fuso horário volta ao normal quando eu reinicio minha máquina!
Algum conselho?
Editar : A resposta a esta pergunta por 'Celada' implica que eu posso apenas fazer o meu Server UTC. Estou usando o Apache Tomcat 7. Adicionando a resposta da Celada, como posso fazer isso UTC?
Atualização - 3 de abril : Após a resposta da Celada, tentei adicionar SetEnv TZ UTC
no topo do startup.sh. Isso não parece fazer diferença. Depois de alguma pesquisa, eu tentei adicionar export JAVA_OPTS="-Duser.timezone=UTC"
ao startup.sh, mas isso também não teve efeito. Estou adicionando o comando correto ao arquivo correto?
Suponho que, se você usasse o painel de controle para alterar o fuso horário, sua alteração não seria afetada em todas as reinicializações.
Se você está preocupado que o fuso horário está revertendo toda vez que você reiniciar, então parece que você quer tornar a mudança permanente, não temporária, então, nesse caso, por que você não usa apenas o painel de controle?
Se essa alteração for apenas para seu aplicativo da Web, por que você não altera o fuso horário apenas para o servidor da Web em vez de globalmente na máquina? Isso deve ser tão simples quanto adicionar
SetEnv TZ UTC
até o final de /etc/apache2/httpd.conf
.
Se isso não funcionar, pode ser porque a variável TZ
precisaria ser definida antes do Apache ao invés de ser definida pelo Apache. Nesse caso, o seguinte é mais complicado, mas com certeza funcionará:
Edite o /System/Library/LaunchDaemons/org.apache.httpd.plist
Adicione as linhas
<key>EnvironmentVariables</key>
<dict>
<key>TZ</key>
<string>UTC</string>
</dict>
pouco antes da linha que lê </dict>
perto da parte inferior
Recarregue essa configuração
launchctl unload /System/Library/LaunchDaemons/org.apache.httpd.plist
launchctl load /System/Library/LaunchDaemons/org.apache.httpd.plist
Tudo isso precisa ser feito como root.
Se o link simbólico funcionar, você poderá recriar esse link simbólico na inicialização. Consulte Criando jobs do launchd
Tags command-line tomcat utc macos time-zone