segunda-feira, 11 de novembro de 2013

Instalar e empacotar uma lib pelo maven

Pode acontecer de precisarmos distribuir uma lib na aplicação.

Para isso, precisamos definir as propriedades do plug-in maven-install-plugin.

E além disso, é preciso criar uma pasta lib na raiz do projeto maven contendo o arquivo que será empacotado.



  org.apache.maven.plugins
  maven-install-plugin
  
    
      false
      installNomeDaLib
      package
      
        install-file
        
          lib/nomeDaLib.jar
          com.caminhoDaLib
          nome
          jar
          true
        
      
    
  

sexta-feira, 30 de agosto de 2013

Configuração de log no JBoss 7

Usando o JBoss 7.1.1, configuro o log da aplicação assim:
  • editando o standalone.xml;
  • usando a api de log do próprio JBoss.

Editando o arquivo standalone.xml

No subsytem urn:jboss:domain:logging:1.1, coloque um handler e um logger para sua aplicação:

    
        
    
    
    
    


    
    
        
    

Importante ressaltar o atributo use-parent-handlers para que os logs não sejam misturados.

Api de log do JBoss

Para escrever suas linhas de log, use a própria API de log do JBoss:
package br.com.company;

import org.jboss.logging.Logger;

public class UseLogger {

    private final static Logger LOGGER = Logger.getLogger(UseLogger.class);

    public void doCall() {
        try {
        } catch (Exception e) {
            LOGGER.error("Info Log", e);
        }
        LOGGER.info("Info Log");
        LOGGER.debug("Really not important");
    }
}

segunda-feira, 26 de agosto de 2013

Execução de arquivos shell script no MacOS


Arquivos .sh  são aqueles utilizados para instalar alguma aplicação ou executar alguma operação no sistema operacional.

  Forma simples de execução:
    sh arquivo.sh
    ou  
    bash arquivo.sh

  Execução como usuário root (será solicitada senha)
    sudo bash arquivo.sh

terça-feira, 20 de agosto de 2013

Comandos úteis no MacOS

mkdir
  Cria um novo diretório

touch
  Cria um novo arquivo

cp
  Copiar arquivo

scp
  Copia de arquivos usando ssh
  ex: scp -P porta arquivo user@host:/dir

mv
  Mover arquivo

rm
  Remover arquivo ou diretório

less
  Exibir o conteúdo de um arquivo usando scroll

pwd
  Exibe o caminho completo do diretório

echo
  Uso, principalmente, para exibir o conteúdo de uma variável de ambiente (echo $PATH)

tail
  Exibir a parte final de um arquivo. Eu uso bastante para acompanhar log.
  Com a opção -f, é possível checar por novos dados adicionados no fim do arquivo.
  tail -f arquivo

tail com ssh

sftp
  Para transferência de arquivo.
  -o para comandos extras, ex: -oPort=6546
 sftp -oPort user@host
  
  Uma vez conectado, usam-se os comandos get e put para copiar arquivo de/para a máquina remota.
  get remote_path [local_path]
  put local_path [remote_path]

Para maiores informações sobre o comando, podemos usar o comando man, como em, man mkdir.

terça-feira, 20 de novembro de 2012

Lendo parâmetros da máquina virtual Java com Spring

Para esta tarefa, usei a versão 2.5 do spring.

Primeiramente, para passar um parâmetro para a JVM onde a aplicação será executada, use, por exemplo:
-Denvironment=dev

Na aplicação, vamos atentar para o cabeçalho do applicationContext:



Como exemplo de leitura, vamos usar o caso de ambientes de execução da aplicação. Onde temos valores de conexão distintos para uma base de dados.

Então, temos um database.properties para cada tipo de ambiente.

Guardei estes arquivos com pastas nomeadas pelo ambiente em uso, que foram criadas no diretório WEB-INF. Para a pasta dev, temos:

jdbc.url=jdbc:oracle:thin:@localhost:1521:base
jdbc.usernme=admin
jdbc.password=admin
Para ler este arquivo pelo spring, teremos que criar um bean:


    
        /WEB-INF/config/${environment}/database.properties
    


Depois disso, para usar o valor da propriedade no arquivo, basta usar a notação ${propriedade}:

    
    
    
    

segunda-feira, 23 de janeiro de 2012

Tag @autor do Eclipse no MacOS

Ao escrever os JavaDocs, podemos utilizar a tag @autor para indicar um dos autores do código.

O Eclipse utiliza suas configurações ou as do sistema para completar o nome do autor.

Podemos estipular um nome no arquivo de configuração eclipse.ini.

No MacOS, este arquivo é encontrado abrindo o executável Eclipse.app clicando com o botão direito e selecionando a opção "Show Package Contents".

Edite o arquivo eclipse.ini inserindo a seguinte linha:

-Duser.name=Nome do usuario

quarta-feira, 26 de outubro de 2011

Executando mais de uma instância do Dropbox


Se você possui mais de uma conta do Dropbox para sincronizar, você pode fazer um script no MacOS usando o automator. O comando seria assim:

Isto deve criar uma nova instância do Dropbox e encerrar o processo da execução do script.