• 0

[Resolvido] Manipulação de URLClassLoader e ClassLoader, como faço?


nathampa0909
 Share

Question

Olá, estou querendo dar uma aprofundada nos meus conhecimentos de Java e estou querendo fazer um sistema de licença bem legal que talvez eu use ou não futuramente, o que eu estou com dúvidas e não consegui achar na internet um tutorial bom é sobre ClassLoader, onde eu gostaria de baixar uma classe da internet, rodar as informações dessa classe e excluir a mesma, mas estou com dificuldades e não consegui fazer o código. Se alguém souber me explicar sobre o assunto e ter um código exemplo eu agradeceria muito!

 

Att, Nathan.

Share this post


Link to post
Share on other sites

12 answers to this question

Recommended Posts

Ué, baixa o arquivo .class e usa 'Runtime' pra fazer o PC executar: 

Por favor, registre-se ou entre para visualizar isso.

Como baixar um arquivo usando Java: Por favor, registre-se ou entre para visualizar isso.

Como usar a classe Runtime: Por favor, registre-se ou entre para visualizar isso.

 

 

Runtime.getRuntime().exec("java arquivo-class");

 

 

Share this post


Link to post
Share on other sites

Não é necessário baixar o arquivo e verificar.

Faz em PHP.

Salva o IP da maquina que esta tentando acessar no mysql, e quando ela for tentar acessar, verifica o ip dela. Se for o mesmo ip que ta na database, libera.

Se não for, cancela (exit).

E pra ler o código da página faz isso:
 

Por favor, registre-se ou entre para visualizar isso.

Ai, quando o IP não for o mesmo, tu manda um echo acusando algum erro, ai tu puxa isso ae e verifica. Ex:
 

Por favor, registre-se ou entre para visualizar isso.

Ai, com o método do getText(String urlloc), tu vê se na página tem Erro0, se tiver é pq não autorizou. Se não tiver, é por que autorizou e sistema feito (+/-) e.e

Ai, vai da tua imaginação fazer os sistemas de checagem.

A base é isso ae!

Share this post


Link to post
Share on other sites

Não é necessário baixar o arquivo e verificar.

Faz em PHP.

Salva o IP da maquina que esta tentando acessar no mysql, e quando ela for tentar acessar, verifica o ip dela. Se for o mesmo ip que ta na database, libera.

Se não for, cancela (exit).

E pra ler o código da página faz isso:

 

Por favor, registre-se ou entre para visualizar isso.

Ai, quando o IP não for o mesmo, tu manda um echo acusando algum erro, ai tu puxa isso ae e verifica. Ex:

 

Por favor, registre-se ou entre para visualizar isso.

Ai, com o método do getText(String urlloc), tu vê se na página tem Erro0, se tiver é pq não autorizou. Se não tiver, é por que autorizou e sistema feito (+/-) e.e

Ai, vai da tua imaginação fazer os sistemas de checagem.

A base é isso ae!

Eu estou fazendo isso no meu msdev.cf/auth, porém, fica com mais segurança importar uma classe externa também.

Share this post


Link to post
Share on other sites

O meu conhecimento sobre isso é bem vasto, nunca precisei do mesmo, mas sei um pouco.
 
Você precisa carregar o jar que tem a classe... segue o exemplo que fiz
 
Teste (classe)

Por favor, registre-se ou entre para visualizar isso.

Classe para testar

Por favor, registre-se ou entre para visualizar isso.

Resultado da execução
 
3rmmtgR.png


Ué, baixa o arquivo .class e usa 'Runtime' pra fazer o PC executar: 

Por favor, registre-se ou entre para visualizar isso.

Como baixar um arquivo usando Java: Por favor, registre-se ou entre para visualizar isso.

Como usar a classe Runtime: Por favor, registre-se ou entre para visualizar isso.

 

 

Runtime.getRuntime().exec("java arquivo-class");

 

 

Isso só vai executar a classe, diferente do classloader, que vai carregar tudo.

Share this post


Link to post
Share on other sites

O meu conhecimento sobre isso é bem vasto, nunca precisei do mesmo, mas sei um pouco.

 

Você precisa carregar o jar que tem a classe... segue o exemplo que fiz

 

Teste (classe)

Por favor, registre-se ou entre para visualizar isso.

Classe para testar

Por favor, registre-se ou entre para visualizar isso.

Resultado da execução

 

3rmmtgR.png

Isso só vai executar a classe, diferente do classloader, que vai carregar tudo.

Tem como eu pegar um valor que retornou da classe que eu peguei pelo classloader?

Share this post


Link to post
Share on other sites

valor? como assim?

Tem como carregar a Class Inteira Não? Tipo ali como você fez

Class<?> testeclass = etc;

 

ai Para pegar um Método você utilizou a Method

não teria como fazer algo para ficar Tipo assim

 

Digamos que na Classe que carreguei tem um valor que possa ser retornado, digamos um replace

 

public void String replace(String s)

{

    return (s).replaceAll("&","§");

}

 

ai na Jar a qual eu estou importando a classe, atravez de um comando ficaria assim

 

sender.sendMessage(testeclass.replace("&cUm Textinho ai"));

 

Tlgd, como se a Classe Importada ficasse DENTRO do plugin já(temp), e funcionasse como se fosse um classe existente no Plugin(Classe normal, criada e pá, não importada).

 

Sacou Negro?

Edited by root@mikesantos ~/

Share this post


Link to post
Share on other sites

Tem como carregar a Class Inteira Não? Tipo ali como você fez

Class<?> testeclass = etc;

 

ai Para pegar um Método você utilizou a Method

não teria como fazer algo para ficar Tipo assim

 

Digamos que na Classe que carreguei tem um valor que possa ser retornado, digamos um replace

 

public void String replace(String s)

{

    return (s).replaceAll("&","§");

}

 

ai na Jar a qual eu estou importando a classe, atravez de um comando ficaria assim

 

sender.sendMessage(testeclass.replace("&cUm Textinho ai"));

 

Tlgd, como se a Classe Importada ficasse DENTRO do plugin já(temp), e funcionasse como se fosse um classe existente no Plugin(Classe normal, criada e pá, não importada).

 

Sacou Negro?

Não, que eu saiba não, só com reflection mesmo, ou você pode adicionar ao seu projeto para nao ficar com erro e depois só carregar como eu disse acima, igual o bukkit...

Share this post


Link to post
Share on other sites

Não, que eu saiba não, só com reflection mesmo, ou você pode adicionar ao seu projeto para nao ficar com erro e depois só carregar como eu disse acima, igual o bukkit...

Entra no skype plz, preciso falar com você.

Share this post


Link to post
Share on other sites

Guest
This topic is now closed to further replies.
 Share

  • Recently Browsing   0 members

    • No registered users viewing this page.