Sono confuso tra la differenza di javax. faces-2.1.14.jar da jsf-api-2.2.0-m05.jar e jsf-impl-2.2.0-m05.jar Sto provando a creare un progetto jsf senza usare Maven e durante la ricerca di esempi che ho visto diverse dipendenze jar su diversi tutorial. Il tutorial di coreservlets utilizza javax.faces-2.1.14.jar e l'altro tutorial che ho visto da un altro sito utilizza 2 file jar jsf-api-2.2.0-m05.jar e jsf-impl-2.2.0-m05. jar Mi piacerebbe conoscere la differenza di queste due serie di dipendenze. Grazie in anticipo ragazzi.Qual è la differenza tra javax.faces-2.1.14.jar da jsf-api-2.2.0-m05.jar e jsf-impl-2.2.0-m05.jar
risposta
Il jsf-api-xxx.jar
contiene classi che si trovano sotto pacchetti pacchetto java javax.faces
. Le classi in questo jar sono l'implementazione dell'API standard definita dalla specifica JSF. Lo jsf-impl-xxx.jar
contiene classi che si trovano sotto il pacchetto java com.sun.faces
, che, come indica il pacchetto java, è la classe di Sun per l'implementazione JSF.
Lo javax.faces-xxx.jar
unisce effettivamente i due file jar precedenti. Nel repository Maven, è sotto org.glassfish
groupId. All'interno troverai sia il pacchetto javax.faces
e com.sun.faces
java.
Quindi, cosa dovresti usare per il tuo sviluppo? In realtà puoi usare entrambi. Ma il modo consigliato è di includere jsf-api-xxx.jar
solo nel classpath della compilation. Pertanto la propria applicazione non dipende da alcuna classe nel pacchetto com.sun.faces
per ottenere la portabilità in altre implementazioni JSF. Se si sta utilizzando un'applicazione come GlassFish, il contenitore deve già fornire l'implementazione JSF in fase di runtime. Non dovresti comprimere i file jar JSF di cui sopra con il tuo file war o ear, dato che il server fornirà tutti loro. Se si utilizza un contenitore che non viene fornito con un'implementazione JSF per impostazione predefinita come Tomcat, è necessario il pacchetto javax.faces-xxx.jar
o (jsf-api-xxx.jar
+ jsf-impl-xxx.jar
) nel numero WEB-INF/lib
.
Sono versioni differenti.
- javax.faces-2.1.14.jar è un file JAR combinata per 2.1.14
- jsf-api-2.2.0-m05.jar e JSF-impl-2.2.0-m05.jar sono JAR distinti per 2.2.0-m05.
Le differenze tra le versioni sono disponibili nelle note di rilascio, ma 2.2 e 2.1 non sono banalmente diverse.
- 1. Qual è la differenza tra ojdbc6.jar e ojdbc14.jar?
- 2. Qual è la differenza tra ojdbc6.jar e ojdbc7.jar?
- 3. Qual è la differenza tra i file apklib e jar?
- 4. Qual è la differenza tra "Aggiungi JAR" e "Aggiungi JAR esterni" in Eclipse?
- 5. Differenza tra file .jar e .dll
- 6. Kotlin runtime jar vs kotlin stdlib jar
- 7. Java war vs. jar: qual è la differenza?
- 8. ojdbc14.jar vs. ojdbc6.jar
- 9. gradle Differenza tra jar e attività di assemblaggio
- 10. È possibile aggiungere più jar in un file jar e quindi avviare il file jar
- 11. Come convertire jar in jar rsyncable?
- 12. Differenza tra AAR, JAR, DEX, APK in Android
- 13. Qual è la differenza tra le opzioni di gestione della libreria jar eseguibili?
- 14. Come gestire la dipendenza da jar grassi
- 15. Caricamento da JAR come InputStream?
- 16. SBT: classe Exclude da Jar
- 17. Generazione jar sorgente e Javadoc
- 18. Differenza binaria nel file Zip/Jar
- 19. Aggiungi libreria esterna .jar a Spring boot .jar internal/lib
- 20. jar "Selenium server standalone" vs jar "selenium java"
- 21. Differenza tra lo scope maven compilato e fornito per la confezione JAR
- 22. Maven - Genera Jar e War
- 23. spring 3.0.5 library jar
- 24. Come evitare l'errore "javax.servlet-api-3.0.1.jar - jar non caricato"?
- 25. Java - Qual è la differenza di fare doppio clic e in esecuzione da Terminal per aprire un file .jar?
- 26. file di politica jar
- 27. disabilita l'esecuzione: default-jar
- 28. Firma file .Jar
- 29. Aggiungi Jar standalone pyspark
- 30. Fare doppio clic su java -jar MyJar.jar
Questo era il tipo di descrizione e confronto che stavo cercando. Anche il caso d'uso, in particolare l'ultimo paragrafo, è esattamente la domanda che mi dava fastidio. Grazie! – royjavelosa
@royjavelosa Contento di poter aiutare – Lan