Compilador para o sistema de Memória Compartilhada Distribuída em Java

Veja Sistema de Memória Compartilhada Distribuída em Java

Veja também Construindo e utilizando Proxies no mesmo site.

Compilação

Como no sistema original, basta executar o comando

$ant

a partir do diretorio-base para gerar o pacote shmem.jar

Utilização

A ídeia principal desse projeto era criar um mecanismo simples de gerar proxies para objetos a serem compartilhados num GlobalSpace. O processo todo divide-se em duas etapas:

Configuração
Um programa lê um arquivo .class e mostra uma interface gráfica ao usuário. Lá, ele pode marcar quais metodos envolvem alteração do estado do objeto (ou seja, escrita)
O usuário fornece o nome da classe e o nome do arquivo xml onde ele quer que a configuração seja gravada
Clica um botao e o programa gera o arquivo para ele
Criação do arquivo-fonte
Um outro programa lê os dois arquivos (.class e .xml) e gera um arquivo .java, que pode ser compilado com o resto do programa

A classe gerada possui muitas semelhanças e algumas diferenças com relação à classe original:

Scripts

Para facilitar o uso, colocamos no subdiretório bin da distribuição 3 scripts, utilizados conforme as instruções a seguir:

bin/configurator <class_file>
Lê o arquivo class_file e gera um XML para ele
bin/shmemc <class_file> <xml_file>
Gera um arquivo .java a partir dos parâmetros
bin/build <class_file> <xml_file>
Chama os dois scripts acima, assumindo que o arquivo XML gerado pelo configurator tera o nome fornecido pelo parametro

LOCALCLASSPATH

Classes adicionais que podem ser necessárias para carregar a classe envolvida devem estar no CLASSPATH ou na variável LOCALCLASSPATH no momento da execução do programa

JDOM

O compilador usa, para manipular os arquivos XML, o pacote JDOM, disponivel gratuitamente.

Autores: