Java 如何从源代码构建Mojara

Java 如何从源代码构建Mojara,java,maven,build,jar,mojarra,Java,Maven,Build,Jar,Mojarra,我从下载了Mojarra源代码。我还下载了pom文件来构建源代码文件。事实证明,代码结构与原始结构不同,我需要创建目录,但需要创建文件 我创建了这个目录结构: laptop@Laptop javax.faces-2.1.9-sources]$ tree . |-- pom.xml `-- src `-- main |-- java | |-- com | | `-- sun | | `-- fa

我从下载了Mojarra源代码。我还下载了pom文件来构建源代码文件。事实证明,代码结构与原始结构不同,我需要创建目录,但需要创建文件

我创建了这个目录结构:

laptop@Laptop javax.faces-2.1.9-sources]$ tree

.
|-- pom.xml
`-- src
    `-- main
        |-- java
        |   |-- com
        |   |   `-- sun
        |   |       `-- faces ....(other sub directories)
        |   `-- javax
        |       `-- faces ....(other sub directories)
        `-- resources
            `-- META-INF
                `-- MANIFEST.MF
我创建了目录
src
main
java
resources
,并将源代码目录放在这些目录中,但它不起作用。将源代码文件放入包中的正确方法是什么


祝福

自2017年1月16日起,您可以使用以下步骤构建Mojara:

注意:构建Mojara需要在系统上安装
ant
maven
。它还要求您使用正确的JDK版本:

  • 对于Mojarra
    2.3.x
    使用JDK
    8
    (或
    1.8
  • 对于Mojara
    2.2.x
    使用JDK
    7
    (或
    1.7
  • 对于Mojarra
    2.1.x
    使用JDK
    6
    (或
    1.6
    )(我还没有实际测试过这个)

  • git://java.net/mojarra~git

    git clone git://java.net/mojarra~git
    
  • 导航到新的
    mojara~git
    目录:

    cd mojarra~git/
    
  • build.properties.glassfish
    复制到
    build.properties

    cp build.properties.glassfish build.properties
    
    ant clean main mvn.deploy.snapshot.local
    
    ant clean main mvn.pre-maven-rename.deploy.snapshot.local
    
  • build.properties
    文件中设置
    jsf.build.home
    属性:

    jsf.build.home=/path/to/mojarra
    
    这里有一个(GNU)
    sed
    命令来执行此操作:

    sed -i "s|jsf[.]build[.]home=.*|jsf.build.home=$PWD|" build.properties
    
  • Mojarra
    2.3.x
    注意:
    跳过此步骤

    运行
    ant
    构建Mojarra构建工具:

    ant main clean main
    
  • 运行以下
    ant
    命令之一以构建Mojara:

  • 如果要将mojara构建为单个javax.faces.jar,请运行以下命令:

    cp build.properties.glassfish build.properties
    
    ant clean main mvn.deploy.snapshot.local
    
    ant clean main mvn.pre-maven-rename.deploy.snapshot.local
    
    新建的Mojara jar将位于jsf ri/build/mvn/target中,作为
    javax.faces-${mojara.version}.jar

    Mojarra
    2.3.x
    注意:
    新构建的JSF/Mojarra API jar将位于
    JSF API/build/mvn/target
    作为
    javax.faces API-${Mojarra.version}.jar
    <

  • Mojarra
    2.3.x
    注意:
    此命令可能不适用于Mojarra
    2.3.x

    如果要将mojara构建为两个jar,
    jsfapi.jar
    jsf impl.jar
    ,请运行以下命令:

    cp build.properties.glassfish build.properties
    
    ant clean main mvn.deploy.snapshot.local
    
    ant clean main mvn.pre-maven-rename.deploy.snapshot.local
    
    新构建的Mojara API jar将位于
    jsf API/build.pre-maven rename/mvn-pre-maven rename/target
    作为
    jsf API-${mojara.version}.jar
    。新建的Mojara jar将位于
    jsf ri/build.pre-maven rename/mvn-pre-maven rename/target
    jsf impl-${mojara.version}.jar


  • 出于maven目的,Mojara快照jar也将安装在本地
    ~/.m2/
    存储库中。

    在构建
    Mojara_2_2X_滚动时
    从sourceforge下载依赖项时,可能会遇到SSL异常或握手错误。您可以通过更新JRE的证书来修复此问题。我发现最简单的更新方法是从较新的JDK复制
    cacerts
    文件:
    cp$JDK_8_HOME/jre/lib/security/cacerts$JDK_7_HOME/jre/lib/security/cacerts