Eu tenho dois perfis Primavera: deve test. Eu quero definir o perfil ativo no ambiente de servidor, eu não quero colocá-lo em meu código para que onde quer que eu implantar o meu aplicativo o perfil é carregado com base no perfil no servidor. Como eu posso fazer isso?
Definir variável Perfil Primavera
Você pode simplesmente definir uma propriedade do sistema no servidor da seguinte forma ...
-Dspring.profiles.active=test
Edit: Para adicionar este para tomcat no eclipse, selecione Run -> Run Configurationse escolha sua configuração Tomcat executado. Clique na Argumentsguia e adicionar -Dspring.profiles.active = teste no final VM arguments. Outra forma seria a de adicionar a propriedade aos seus catalina.properties em seu Serversprojeto, mas se você adicioná-lo lá omitir o -D
Edit: Para uso com Primavera de inicialização , você tem uma opção adicional. Você pode passar a propriedade como um argumento de programa se você preceder a propriedade com dois traços.
Aqui estão dois exemplos usando um arquivo jar executável Primavera Bota ...
propriedade sistema
[user@host ~]$ java -jar -Dspring.profiles.active=test myproject.jar
Argumento programa
[user@host ~]$ java -jar myproject.jar --spring.profiles.active=test
Há pelo menos duas maneiras de fazer isso:
definindo param contexto em web.xml - que quebra "um pacote para todos os ambientes" declaração. Eu não recomendo que
definição de propriedade do sistema
-Dspring.profiles.active=your-active-profile
Eu acredito que a definição de propriedade do sistema é uma abordagem muito melhor. Assim como definir propriedade do sistema para Tomcat? Na internet eu poderia encontrar um monte de conselhos como "modificar catalina.sh" porque você não vai encontrar nenhum arquivo de configuração para fazer coisas assim. Modificando catalina.sh é uma solução insustentável suja. Há uma maneira melhor de fazer isso.
Basta criar setenv.sh arquivo no diretório bin do Tomcat com o conteúdo:
JAVA_OPTS="$JAVA_OPTS -Dspring.profiles.active=dev"
e ele será carregado automaticamente durante a corrida catalina.sh iniciar ou executar.
Aqui é um blog que descreve a solução acima. A seção de comentários é interessante como ele fala sobre mais detalhes.
como variável de ambiente do sistema:
Do Windows:
Iniciar -> tipo "envi" variáveis de seleção de ambiente e adicionar um novo:
Name: spring_profiles_active
Value: dev(ou qualquer que seja o seu caso é)
Linux: adicione o seguinte linha ao / etc / ambiente sob PATH:
spring_profiles_active=prod (Ou qualquer outro perfil é)
em seguida, também export spring_profiles_active=prodpara que você tê-lo em tempo de execução agora.
Para Tomcat 8:
Linux:
Criar setenv.sh e atualizá-lo com as seguintes:
exportação SPRING_PROFILES_ACTIVE = dev
Janelas:
Criar setenv.bat e atualizá-lo com as seguintes:
definir SPRING_PROFILES_ACTIVE = dev
Para Eclipse, definindo -Dspring.profiles.activevariável nos argumentos VM faria o truque.
Vamos para
Clique direito Projeto -> Executar como -> Configurações Run -> Argumentos
E adicionar o seu -Dspring.profiles.active=devnos argumentos VM













