Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Chamada de .jar e .class

Olá, Minha dúvida é a seguinte. Eu estou usando um Framework no qual ele possui vários .jar que eu preciso inserir para que as classes funcionem no meu código. Eu entendo que dentro desses .jar só tem arquivo .class que são chamados durante a execução do programa.

Mas vejamos assim, digamos que dentro do meu código eu tenho a classe "IndexWriter" que faz parte do pacote "org.apache.lucene.index", porém esse pacote está dentro do .jar, no qual eu não consigo visualizar no projeto.(Pois são arquivos .class já compilados.)

No caso, eu tenho o código dessa classe e digamos que eu crie esse pacote ("org.apache.lucene.index") no meu projeto e coloque essa classe ("IndexWriter" )dentro do meu pacote. Detalhe: o código que irá ter dentro da classe, é o mesmo que foi usado para compilar o .class que está dentro do .jar.

Minha dúvida é a seguinte, na hora de compilar e executar a JVM vai da a prioridade de chamada para qual pacote e qual classe? A que está dentro do .jar, ou a que eu criei dentro do meu projeto.

O meu objetivo é modificar esta classe "IndexWriter", porém, eu não sei , se eu posso ter problemas com relação a essas prioridades de chamada...

1 resposta
solução!

Quando se tem duas classes com o mesmo nome (Duas criadas pelo usuário, nunca testei com uma já compilada), o compilador simplesmente não compila. Creio que nesse caso aconteceria a mesma coisa. Outra solução é simplesmente não importar a classe, dessa forma não colocando-a em seu projeto final, ou ainda criar uma classe que herda dessa do Jar e usa o @Override na linha acima de um método que você queira sobrescrever, mas lembre que nesse caso não será possível apagar atributos e métodos da classe principal, somente reescrever.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software