掲示板

ivy.xml classpath solo per compilazione

9年前 に Michele Stoduto によって更新されました。

ivy.xml classpath solo per compilazione

Junior Member 投稿: 42 参加年月日: 10/07/07 最新の投稿
Ciao a tutti,
ho un piccolo problema che non so' come risolvere.

Sto' realizzando delle portlet per uso intranet e vorrei sfruttare le librerie e gli ejb creati in ditta (non mi va di riscrivere la ruota emoticon ).
Il tutto si basa su liferay 6.2 CE con jboss 7.1.1. come AS.
All'interno di jboss si è provveduto a deployare un EJB 3 e fin qui nulla di strano.

Ho creato una portlet di prova con l'ide ultima versione per vedere se il tutto girava e qui iniziano i primi problemi (che poi in realtà ne è solo uno).

Non riesco a dire all'editor che le librerie relative all'EJB sono solo per la compilazione in quanto sono già all'interno di jboss.

L'errore che ottengo lanciando il deploy dal plug-in ide è il seguente


    [javac] 1. ERROR in D:\Documenti\michele.stoduto_oti\progetti\intranet\liferay-plugins-sdk-6.2.0\portlets\statistica-portlet\docroot\WEB-INF\src\com\otiomeopatici\prova\TestEBJ.java (at line 5)
    [javac] 	import javax.ejb.EJB;
    [javac] 	       ^^^^^^^^^
    [javac] The import javax.ejb cannot be resolved
    [javac] ----------
    [javac] 2. ERROR in D:\Documenti\michele.stoduto_oti\progetti\intranet\liferay-plugins-sdk-6.2.0\portlets\statistica-portlet\docroot\WEB-INF\src\com\otiomeopatici\prova\TestEBJ.java (at line 9)
    [javac] 	import com.otiomeopatici.db.ejb.gestore.ArticoloLocal;
    [javac] 	       ^^^^^^^^^^^^^^^^^^^^
    [javac] 	@EJB(lookup="java:global/GestioneSchede/ArticoloEJB!com.otiomeopatici.db.ejb.gestore.ArticoloLocal")
    [javac] 	 ^^^
    [javac] EJB cannot be resolved to a type
    [javac] ArticoloLocal cannot be resolved to a type
    --  continua


Mentre se esporto manualmente il war (export->War File in eclipse) creandolo nella cartella liferay-server/deploy senza passare per il plug-in tutto funziona a dovere:

Saltando la gestione con l'ivy.xml se provvedo a fare un GestioneSchede.jar e a inserirlo nella WEB/lib o modificando i vari ivy per creare un repository locale non ho problemi,
ma questo mi comporta che il deploy viene fatto copiando le librerie nel war finale e la cosa non mi piace in quanto sono librerie già accessibili da jboss.

La mia domanda è semplice, come faccio a dire al plug-in che determinate librerie vanno utilizzate solo in fase di compilazione e non di deploy?

Grazie.
Michele Stoduto.
9年前 に Michele Stoduto によって更新されました。

RE: ivy.xml classpath solo per compilazione

Junior Member 投稿: 42 参加年月日: 10/07/07 最新の投稿
Ciao a tutti.
Il problemino è stato risolto in questo modo:
il file liferay-plugin-package.properties ha una proprietà dal nome deploy-excludes,
aggiungo in questa proprietà le librerie da non copiare nel deploy reale del server ed il gioco è fatto.

deploy-excludes=\
    **/WEB-INF/lib/daoutils.jar,\
    **/WEB-INF/lib/GestioneSchede-1.0.jar,\
    **/WEB-INF/lib/hibernate-core.jar,\
    **/WEB-INF/lib/hibernate-jpa-2.0-api.jar,\
    **/WEB-INF/lib/jboss-ejb-api_3.1_spec.jar


Se qualcuno ha una dritta diversa sono pronto a provarla.

Grazie.