Pregunta

¿Agregar un archivo MANIFEST.MF con el atributo Class-Path al directorio META-INF dentro influencia EAR el orden de carga de los frascos situados en APP-INF / lib bajo WebLogic 8.1?

¿Fue útil?

Solución

No creo que se puede controlar el orden APP-INF / lib a través de atributos ClassPath de MANIFIEST.MF.

He hecho esto un par de maneras diferentes, dependiendo del cliente.

  1. Añadir el frasco parche a la ruta de clase del sistema de WLS. Si examina dominio / bin / setDomainEnv.sh (o .cmd) no debería pre, post, variables de entorno de ruta de clase de parches. Usted podría intentar añadir su frasco de parche en la ruta de clase aquí. Esto hace que esté disponible para todas las aplicaciones, que podrían no ser lo que el cliente quiere.
  2. somejar.jar Patch y el nombre que somejar-patched.jar. Vuelva a colocar el frasco en APP-INF / lib con la versión "-patched".

Otros consejos

pensé que el cargador de clases leer JAR cuando son requeridas por la aplicación.

Tengo dos preguntas para usted:

  1. ¿Por qué sigues usando WebLogic 8.1? Queda lejos de apoyo ahora, y la versión actual es 10.x. Estás dos versiones atrás. ¿Es esta una aplicación de legado que no ha migrado todavía? Usted obtendrá un gran impulso por la actualización, ya que va a utilizar el JDK 5 o 6 con la opción -server. Se lo recomiendo.
  2. ¿Por qué debe preocuparse por el orden de carga? Debe ser irrelevante para su aplicación cómo las cargas de contenedores y gestiona los granos.

ACTUALIZACIÓN:

Eso suena diferente, casi como si estuviera teniendo conflictos con los tarros de servidor. Hay que prefiere; web- INF-clases ajuste de esa situación. Es eso lo que quiere decir?

Estoy de acuerdo con duffymo

Usted no debe tener que preocuparse por el orden de carga de clases, si esto se debe a las clases en conflicto siempre se puede excluir a las clases en lucha de Jars utilizando Maven o una herramienta similar.

Por ejemplo, este es un ejemplo muy simple de añadir frasco Jersey-Spring4 pero estoy con exclusión de sus dependencias para que pueda utilizar una versión diferente de la biblioteca marco de primavera.

<dependency>
  <groupId>org.glassfish.jersey.ext</groupId>
  <artifactId>jersey-spring4</artifactId>
  <exclusions>
    <exclusion>
      <artifactId>spring-web</artifactId>
      <groupId>org.springframework</groupId>
    </exclusion>
    <exclusion>
      <artifactId>spring-aop</artifactId>
      <groupId>org.springframework</groupId>
    </exclusion>
    <exclusion>
      <artifactId>spring-context</artifactId>
      <groupId>org.springframework</groupId>
    </exclusion>
    <exclusion>
      <artifactId>spring-beans</artifactId>
      <groupId>org.springframework</groupId>
    </exclusion>
  </exclusions>
</dependency>
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top