[Java] Dynamisch classes laden

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ik wil voor een projectje een systeem maken waar mensen plugins voor kunnen maken. Nu had ik 't idee dat ze gewoon in een bepaalde package(of map) hun .class file zetten. Vervolgens voegen ze de classnaam toe aan een xml bestandje en dan laad mijn systeem alle classes die daarin staan om ze vervolgens te starten(het zijn threads). Het is dus een systeem dat in een continue while loop runned voor de duidelijkheid, en de plugins ook. De plugins extenden trouwens allemaal een grote Plugin class.

Nu weet ik echter niet hoe ik een class bij naam kan laden als die naam dynamisch is. Want dan moet ik in principe een string omzetten naar een class om daar vervolgens de start() functie van aan te roepen. Hoe kan ik dit het beste aanpakken? Of misschien weten jullie een betere manier van plugins? Het gaat erom dat je zo een plugin kan toevoegen zonder de source van het hoofdproject aan te hoeven passen.

Alvast bedankt

Acties:
  • 0 Henk 'm!

  • -FoX-
  • Registratie: Januari 2002
  • Niet online

-FoX-

Carpe Diem!

Class.forName() is your friend :) leesvoer

[ Voor 49% gewijzigd door -FoX- op 10-03-2010 12:07 ]


Acties:
  • 0 Henk 'm!

  • DEiE
  • Registratie: November 2006
  • Laatst online: 16-08 19:21
zo moet het waarschijnlijk lukken: http://mindprod.com/jgloss/classforname.html#DYNAMIC

edit: Arrg -FoX-, je bent me net voor :P

[ Voor 20% gewijzigd door DEiE op 10-03-2010 12:09 ]


Acties:
  • 0 Henk 'm!

  • Hydra
  • Registratie: September 2000
  • Laatst online: 21-08 17:09

https://niels.nu


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Ty, moet wel lukken zo ja

Acties:
  • 0 Henk 'm!

  • Salandur
  • Registratie: Mei 2003
  • Laatst online: 22:47

Salandur

Software Engineer

je kan ook kijken naar de service difinities die gebruikt worden bij de publice api's zoals xml. http://java.sun.com/j2se/...r.html#Service%20Provider
http://java.sun.com/docs/books/tutorial/sound/SPI-intro.html

[ Voor 15% gewijzigd door Salandur op 10-03-2010 13:01 ]

Assumptions are the mother of all fuck ups | iRacing Profiel


Acties:
  • 0 Henk 'm!

  • Herko_ter_Horst
  • Registratie: November 2002
  • Niet online
Of als het nog uitgebreider moet/mag: OSGi (het plugin-systeem wat o.a. ook onder Eclipse zit).

[ Voor 36% gewijzigd door Herko_ter_Horst op 10-03-2010 13:23 ]

"Any sufficiently advanced technology is indistinguishable from magic."


Acties:
  • 0 Henk 'm!

Verwijderd

Topicstarter
Alles wat ik nodig heb is al gelukt met de forName functie.
Pagina: 1