Pregunta

Necesito usar un jar de terceros en mi proyecto. El proyecto es un proyecto de Spring y el jar también está usando Spring.

¿Hay alguna forma de incluir el jar de terceros en mi proyecto? Me resulta difícil encontrar todas y cada una de las dependencias del frasco de la tercera parte e inyectarlo.

¿Fue útil?

Solución

No debería ser un problema. Los contextos de aplicación se pueden cargar independientemente uno del otro en la misma JVM, generalmente. Pero si está cargando sus definiciones de bean desde un archivo de recursos en el classpath (por ejemplo, usando ClasspathXmlApplicationContext ), asegúrese de que la ubicación y el nombre de su archivo no entren en conflicto con el JAR de terceros. Por ejemplo, si ambos están ubicados en " /applicationContext.xml" en diferentes JAR en el classpath, tendrá un problema. Haz el tuyo único.

Otros consejos

No tengo claro exactamente qué quieres decir con " include " ;.

Si el jar de la tercera parte se define como una dependencia en su proyecto de guerra, se incluirá automáticamente en la carpeta WEB-INF / lib de la guerra cuando esté empaquetado por complemento de guerra . Cualquier clase en el jar estaría entonces en el classpath y, por lo tanto, disponible para ser referenciada en su configuración Spring. ¿Tiene un requisito más específico que este?

También tenga en cuenta que si el jar de terceros es un proyecto Maven correctamente definido, sus dependencias se definirán en su pom. Esas dependencias transitivas también están incluidas en la guerra (a menos que las haya definido con un alcance en cuyo caso podrían no serlo).

Cualquiera de los frascos que encuentre en el repositorio central de Maven debería definirse con todas sus dependencias transitivas. Si tiene problemas para resolverlos, actualice su respuesta para poder ubicar las credenciales relevantes de Maven.

Actualización basada en tu comentario. Una vez que el jar está en el classpath de war, puedes hacer referencia a cualquier archivo de configuración de Spring que declare importándolos al contexto de aplicación de war. Simplemente especifique la importación en el formulario: " jar: file: // jarName! /Path/to/config.xml"

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top