¿Por qué una compilación del producto Eclipse RCP no puede encontrar clases en org.eclipse.ui durante la construcción sin cabeza?

StackOverflow https://stackoverflow.com/questions/1286738

  •  18-09-2019
  •  | 
  •  

Pregunta

Tengo una definición de producto que incluye una característica que escribí y la org.eclipse.feature. Cuando construyo este producto de eclipse, que se completa con éxito. Sin embargo, cuando trato de usar la acumulación sin cabeza, el proceso de compilación falla, ya que se queja de que no puede encontrar las clases incluidas en org.eclipse.ui. Una de estas clases, por ejemplo, es PlatformUI. Así pues, el proceso de generación falla.

He comprobado y el org.eclipse.ui está incluido en el plugin org.eclipse.ui. También he tratado de incluir explícitamente este plugin en mi función personalizada, pero sin éxito.

También he intentado quitar uno de estos complementos con problemas, pero lo siguiente que utiliza org.eclipse.ui fallidos. Por lo tanto, parece ser definitivamente un problema de ruta de clase de algunas sowrt.

He probado esta versión sin cabeza utilizando la versión 3.3.2 de Eclipse.

¿Fue útil?

Solución

La clase org.eclipse.ui.PlatformUI está en el org.eclipse.ui.workbench plug-in.

org.eclipse.ui.workbench se requiere y re-exportado por org.eclipse.ui. El paquete "org.eclipse.ui" es una paquete dividido .

Si está utilizando Import-Package para esta dependencia, entonces solo se están conectado por cable a uno de los proveedores del paquete. Si sólo necesita las clases de la ui.workbench, a continuación, se puede añadir un atributo a su estado de Import-Package:

Import-Package:org.eclipse.ui;ui.workbench=split

O, usted podría cambiar a Require-Bundle

Otros consejos

¿Ha comprobado su archivo build.properties?

Específicamente la archivesFormat sección

  

La propiedad archivesFormat permite especificar el formato de salida (zip, tar, y la carpeta) de la construcción en una base de configuración.
  El formato de la propiedad es <configuration> - <format>, donde la configuración es el mismo valor que el que se especifica en la propiedad configuraciones.

Si se especifica linux,gtk,x86-folder mientras usted está tratando de construir con una instalación win32, no va a funcionar.

Desafortunadamente Eclipse muestra un comportamiento diferente entre la exportación de un producto en la interfaz gráfica de usuario y hacerlo sin cabeza. Ellos no son exactamente lo mismo.

Uno de los problemas que he encontrado en el pasado es que necesitaba el delta del paquete instalado para la construcción sin cabeza para trabajar, incluso si yo estaba haciendo la acumulación en la misma arquitectura que tenía como objetivo (Win32). La exportación del producto de la interfaz gráfica de usuario funcionaría sin el paquete delta - doh

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