anotação Java pode fazer isso?

votos
3

Eu estou olhando para uma solução que exibe o número de revisão de subversão e data da última modificação no meu aplicativo (escrito em GWT, portanto, a reflexão não está disponível). Codificar a revisão na chave subversão não funciona, uma vez que se aplica apenas ao ficheiro actual. Existe uma solução melhor usando anotação? (Por exemplo, uma classe separada que é executado durante o tempo de compilação, pegue a última revisão # em todo o projeto e injetar a data de revisão e última modificação ao código-fonte)

Publicado 19/05/2009 em 21:25
fonte usuário
Em outras línguas...                            


3 respostas

votos
2

As anotações não são realmente concebido para isso. É mais fácil de fazê-lo como parte da compilação.

Usando Ant você pode gerar um arquivo que contém as informações de versão, incluí-lo em JAR do aplicativo, carregá-lo como um recurso no servidor, e servi-lo para o código do lado do navegador pela RPC. Ant também pode fazer substituição de string em arquivos como lhes cópias, o que você pode usar para incluir o número da versão em arquivos HTML do seu aplicativo (sem necessidade de RPC então).

Nenhuma idéia sobre Maven, mas eu ficaria muito surpreso se ele não poderia fazer o mesmo tipo de coisa.

Respondeu 29/05/2009 em 23:26
fonte usuário

votos
2

I kn

@SvnRevision("$Id$")
public class Foo {
}

Em seguida, suas aulas são todas anotadas com sua versão. Você precisa ter certeza da anotação é definida como tendo a retenção de tempo de execução para que possa ser consultado em tempo de execução.

EDITAR

OK, já que SVN não tem esse recurso, eu ia escrever um plugin Maven para imitá-lo. Maven tem acesso às informações de SCM para cada arquivo assim que durante a fase de construção você poderia tê-lo fazer o mesmo expansão palavra-chave.

Respondeu 19/05/2009 em 21:43
fonte usuário

votos
0

Subversion ainda tem o recurso $ $ Id, mas ele precisa ser habilitado explicitamente usando a propriedade svn: keywords nos arquivos (configurá-lo para 'Id').

Veja também: http://svnbook.red-bean.com/en/1.5/svn.advanced.props.special.keywords.html

Assim, a idéia de Jherico acima com @SvnRevision iria funcionar.

Respondeu 26/10/2009 em 22:03
fonte usuário

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more