2011-02-25 20 views

risposta

3

C'è un problema noto su questo, vedi: http://www.ibm.com/support/docview.wss?rs=180&uid=swg21396021

Impostando il valore metadati completo al vero nella tua web.xml impedirà la scansione per le annotazioni e velocizzare le cose.

È inoltre possibile utilizzare il filtro di scansione Annotation nel file manifest del modulo per impedire in modo selettivo la scansione delle annotazioni dei file jar.

1

questo non è specifico con RAD, ma dopo anni di lavoro con WebSphere ho scoperto che se non si sta modificando il descrittore di deployment o il descrittore servizio web, è sufficiente aggiornare l'EAR esploso/File WAR nella cartella installedApps del server delle applicazioni WAS. Per aggiornare, puoi semplicemente "decomprimere" il nuovo file JAR nella cartella.

Successivamente, riavviare il server delle applicazioni. SIGNIFICATIVAMENTE più veloce, soprattutto se l'avvio WAS è veloce.

+0

Solo una nota. Lo sto facendo da un po '. Di solito non ricomincio e la maggior parte delle volte funziona correttamente. Ma a volte diventa strano come il problema che ho postato [qui] (http://stackoverflow.com/questions/25769258/javascript-file-is-not-loading-fully-in-all-browsers). Il riavvio di WAS richiede un po 'di tempo. Direi, circa 3-5 minuti –

0

Una delle cose fastidiose che rallenta RAD è la pubblicazione automatica del server.Così se è possibile modificare l'opzione in Sever Configuration Editor (a cui è possibile accedere facendo doppio clic sui server nella vista server) che potrebbero impedire la pubblicazione a volte non vuoi Assicurati di pubblicarlo ogni volta che devi apportare una modifica.

Inoltre, penso che se si modifica l'opzione per "pubblicare senza copiare le risorse" che potrebbe anche accelerare l'avvio del server.

1

Purtroppo non ho avuto l'opportunità di provarlo da quando ci siamo appena trasferiti da RAD a Eclipse ma vi consiglio di investire alcuni minuti nel verificare se JRebel funziona con RAD.

Se non funziona si ridurrebbe la quantità di build/distribuisce a quasi 1 al giorno (o il riavvio del computer) come faar come sto sperimentando con Eclipse + WAS8.5 dopo lo spostamento da RAD + WAS7.5.

@Edit: per sicuro RAD non ha bisogno di supportare JRebel in quanto è progettato per eseguire IDE indipendente come maven, formica e tonnellate di altri strumenti utili. Più importante è il punto in cui viene eseguito con Websphere e suppongo che il processo di distribuzione di WAS tenga il massimo del tempo che vuoi risparmiare.

1

Ci sono alcuni semplici passaggi è possibile migliorare in modo significativo la velocità di distribuzione della propria applicazione su WebSphere:

  1. Definire Ignore-Scansione-Archives con tutti i barattoli di terze parti, che non si desidera per la scansione WebShere per annotazioni. Puoi farlo nel file manifest o semplicemente in pom.xml.Fai attenzione, non ci sono regex e se scrivi più jar in una riga in manifest non funzionerà a causa delle limitazioni manifest di lunghezza della linea. Se lo scrivi in ​​manifest.mf devi andare su una nuova riga con lo spazio all'inizio della riga (vedi esempio sotto).

    Ma è possibile scriverlo in una riga nella configurazione del plugin di guerra di Maven (vedere l'esempio completo di seguito) e Maven lo dividerà automaticamente in più righe.

  2. secondo approccio è quello di definire in manifesto/Maven/Websphere Enable-implicito-Bean-archivio per falso Sarà disattivare CDI nei pacchetti, che non contiene beans.xml

  3. terzo approccio è quello di aumentare dimensione dell'heap java nelle proprietà JVM di Websphere. È necessario andare: Websphere IBM Console -> Server -> {il proprio server} -> Infrastruttura server -> Gestione di processo e Java -> Definizione processo -> Proprietà aggiuntive -> Java Virtual Machine -> Imposta dimensione heap iniziale (MB) - 300 (o più) dimensione heap massima (MB) - 600 (o più)

codice di esempio per Maven-guerra-plugin in pom.xml:

<plugin> 
     <groupId>org.apache.maven.plugins</groupId> 
     <artifactId>maven-war-plugin</artifactId> 
     <version>3.1.0</version> 
     <configuration> 
      <failOnMissingWebXml>false</failOnMissingWebXml> 
      <packagingExcludes>pom.xml</packagingExcludes> 
      <archive> 
       <manifestEntries> 
        <Enable-Implicit-Bean-Archive>false</Enable-Implicit-Bean-Archive> 
        <Ignore-Scanning-Archives> 
         hibernate-core-5.2.10.Final.jar,httpclient-4.4.1.jar,poi-ooxml-3.17.jar,poi-3.17.jar,poi-ooxml-schemas-3.17.jar,antlr-2.7.7.jar, apns-1.0.0.Beta6.jar,ews-java-api-2.0.jar,itextpdf-5.5.11.jar,byte-buddy-1.6.6.jar,xmlbeans-2.6.0.jar,guava-23.5-jre.jar,commons-collections4-4.1.jar 
        </Ignore-Scanning-Archives> 
       </manifestEntries> 
      </archive> 
     </configuration> 
    </plugin> 

esempio di manifesto. mf

Manifest-Version: 1.0 
Built-By: your-name 
Enable-Implicit-Bean-Archive: false 
Created-By: IntelliJ IDEA 
Build-Jdk: 1.8.0_144 
Ignore-Scanning-Archives: hibernate-core-5.2.10.Final.jar,httpclient-4 
.4.1.jar,poi-ooxml-3.17.jar,poi-3.17.jar,poi-ooxml-schemas-3.17.jar,a 
ntlr-2.7.7.jar, apns-1.0.0.Beta6.jar,ews-java-api-2.0.jar,itextpdf-5. 
5.11.jar,byte-buddy-1.6.6.jar,xmlbeans-2.6.0.jar,guava-23.5-jre.jar,c 
ommons-collections4-4.1.jar 
Problemi correlati