Articles of cargador de clases

¿Qué es un Java ClassLoader?

En algunas oraciones simples, ¿qué es un Java ClassLoader, cuándo se usa y por qué? OK, leí un artículo de wiki. ClassLoader carga clases. DE ACUERDO. Entonces, si incluyo archivos jar e importo, un ClassLoader hace el trabajo. ¿Por qué debería molestarme con este ClassLoader? Nunca lo he usado y no sabía que existía. La […]

Class.forName () vs ClassLoader.loadClass () – ¿cuál usar para la carga dinámica?

Al cargar dinámicamente una clase, ¿cuándo es apropiado usarla? Class.forName(“SomeClass”); y cuando debería usar ClassLoader.getSystemClassLoader().loadClass(“SomeClass”); O, ¿son dos formas de hacer lo mismo?

En Java, ¿es posible saber si una clase ya se ha cargado?

¿Es posible saber si se ha cargado una clase Java sin intentar cargarla? Class.forName intenta cargar la clase, pero no quiero este efecto secundario. ¿Hay otra manera? (No quiero anular el cargador de clases. Estoy buscando un método relativamente simple).

¿Cómo creo un ClassLoader primario / anterior / secundario en Java, o cómo sobrescribir una versión anterior de Xerces que ya estaba cargada en el CL padre?

Me gustaría crear un cargador de clase parent-last / child-first, por ejemplo, un cargador de clases que busque primero las clases en el lector de clases hijo y solo luego delegue en su ClassLoader padre para buscar clases. Aclaración: Ahora sé que para completar la separación de ClassLoading necesito usar algo así como un URLClassLoader […]

Clase Singleton con varios clasificadores diferentes

Por ejemplo, tengo la clase Singleton con instance campo estático: public class Singleton { private static Singleton instance; // other code, construct, getters, no matter } Puedo cargar esta clase dos veces con dos cargadores de clases diferentes. ¿Cómo podría evitarlo? Es inseguro y peligroso. Además, si configuro la instancia como nula, ¿establecería nulo para […]

URL para cargar recursos desde el classpath en Java

En Java, puede cargar todo tipo de recursos utilizando la misma API pero con diferentes protocolos de URL: file:///tmp.txt http://127.0.0.1:8080/a.properties jar:http://www.foo.com/bar/baz.jar!/COM/foo/Quux.class Esto desacopla muy bien la carga real del recurso de la aplicación que necesita el recurso, y dado que una URL es solo una cadena, la carga de recursos también es muy fácil de […]

Recurso de Java como archivo

¿Hay alguna forma en Java para construir una instancia de archivo en un recurso recuperado de un jar a través del cargador de clases? Mi aplicación utiliza algunos archivos del jar (predeterminado) o de un directorio del sistema de archivos especificado en el tiempo de ejecución (entrada del usuario). Estoy buscando una forma consistente de […]

¿Descargar clases en java?

Tengo un cargador de clases personalizado para que una aplicación de escritorio pueda comenzar dinámicamente a cargar clases desde un AppServer con el que necesito hablar. Hicimos esto porque la cantidad de flasks que se requieren para hacer esto es ridícula (si queríamos enviarlos). También tenemos problemas de versión si no cargamos las clases dinámicamente […]