簡體   English   中英

如何:Maven項目在Eclipse中構建JavaScript

[英]How To: Maven project to build JavaScript in Eclipse

如何配置我的pom以使文件夾充當JavaScript構建路徑?

我想讓開發人員將項目導入eclipse,並在eclipse構建路徑中自動擁有JavaScript根文件夾,以便自動完成和其他JavaScript支持工作。

這是我做的,似乎工作正常。 我正在使用Eclipse Juno SR2(面向Web開發人員的Java EE)和Maven 3.0.5。 (我不是Eclipse或Maven的專家,所以我確信有更優雅的方式來做這件事。請讓我知道!)

根據Maven約定,我們希望有一個如下所示的項目結構:

- src
 +-- main
   +-- java
   +-- js
   +-- webapp
     +--  WEB-INF
 +-- test
   +-- java
   +-- js

然后我們希望使用以下結構部署Web應用程序:

- /
 +-- js
 +-- WEB-INF
   +-- classes

Maven pom.xml的關鍵部分在maven-war-plugin中,它通過src / main / js文件進行復制:

        <plugin>
            <groupId>org.apache.maven.plugins</groupId>
            <artifactId>maven-war-plugin</artifactId>
            <version>2.3</version>
            <configuration>
                <archiveClasses>true</archiveClasses>
                <webResources>
                    <!-- in order to interpolate version from pom into appengine-web.xml -->
                    <resource>
                        <directory>${basedir}/src/main/webapp/WEB-INF</directory>
                        <filtering>true</filtering>
                        <targetPath>WEB-INF</targetPath>
                    </resource>
                    <resource>
                        <directory>${basedir}/src/main/js</directory>
                        <filtering>true</filtering>
                        <targetPath>js</targetPath>
                    </resource>                        
                </webResources>
            </configuration>
        </plugin>

(我現在正在為我的項目使用Google App Engine,因此appengine-maven-plugin會復制我的java代碼和其他資源。)有了這個,你應該能夠使用Maven來構建你的項目。 還有其他可用的Maven javascript插件,用於測試和依賴等,但我認為這是基本功能。

在Eclipse方面,有兩件事:

  • 確保使用已激活JavaScript Project Facet。
  • 在項目屬性 - > JavaScript - >包含路徑 - >源選項卡下,單擊“添加文件夾”並選擇“src / main / js”。 然后,您可以刪除默認路徑。
  • 在項目屬性 - >部署程序集下,添加/ src / main / js文件夾,並適當設置部署路徑(從上面的結構,我希望我的javascript轉到“/ js”。

我可以管理我的java依賴項並從Maven部署到AppEngine,或者從Eclipse進行代碼和調試(在一些擺弄之后),這一切似乎都有效。 我想將我的前端js測試與Maven集成(可能使用javascript-maven-plugin ),但這是另一天的任務。

Javascript是一種解釋型語言,您無需構建或編譯它。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM