java專案中構建scala模塊

在maven專案中構建scala模塊,這樣的話可以java和scala互相調用,最好在環境變量中配置scala home,ide載入相關的模塊進行編譯運行。

pom中的配置如下:

<dependencies>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-library</artifactId>
            <version>2.10.4</version>
        </dependency>
        <dependency>
            <groupId>org.scala-lang</groupId>
            <artifactId>scala-actors</artifactId>
            <version>2.10.4</version>
        </dependency>
        <dependency>
            <groupId>junit</groupId>
            <artifactId>junit</artifactId>
            <version>4.8.1</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-api</artifactId>
            <version>1.5.11</version>
            <scope>provided</scope>
        </dependency>
        <dependency>
            <groupId>com.google.guava</groupId>
            <artifactId>guava</artifactId>
            <version>15.0</version>
            <scope>provided</scope>
        </dependency>

        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>jcl-over-slf4j</artifactId>
            <version>1.5.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>commons-logging</groupId>
            <artifactId>commons-logging</artifactId>
            <version>99.0-does-not-exist</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>org.slf4j</groupId>
            <artifactId>slf4j-log4j12</artifactId>
            <version>1.5.11</version>
            <scope>test</scope>
        </dependency>
        <dependency>
            <groupId>log4j</groupId>
            <artifactId>log4j</artifactId>
            <version>1.2.15</version>
            <scope>test</scope>
            <exclusions>
                <exclusion>
                    <groupId>javax.mail</groupId>
                    <artifactId>mail</artifactId>
                </exclusion>
                <exclusion>
                    <groupId>javax.jms</groupId>
                    <artifactId>jms</artifactId>
                </exclusion>
            </exclusions>
        </dependency>
    </dependencies>

    <build>
        <plugins>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-compiler-plugin</artifactId>
                <version>2.3.2</version>
                <configuration>
                    <source>1.6</source>
                    <target>1.6</target>
                    <encoding>UTF-8</encoding>
                </configuration>
            </plugin>
            <plugin>
                <groupId>org.apache.maven.plugins</groupId>
                <artifactId>maven-resources-plugin</artifactId>
                <version>2.4.3</version>
                <configuration>
                    <encoding>UTF-8</encoding>
                    <useDefaultDelimiters>false</useDefaultDelimiters>
                    <delimiters>
                        <delimiter>${*}</delimiter>
                    </delimiters>
                </configuration>
            </plugin>
            <plugin>
                <groupId>net.alchim31.maven</groupId>
                <artifactId>scala-maven-plugin</artifactId>
                <version>3.1.6</version>
                <configuration>
                    <sourceDir>src/main/scala</sourceDir>
                    <testSourceDir>src/test/scala</testSourceDir>
                    <encoding>UTF-8</encoding>
                    <args>
                        <arg>-encoding</arg>
                        <arg>UTF-8</arg>
                    </args>
                </configuration>

                <executions>
                    <execution>
                        <id>scala-compile-first</id>
                        <phase>process-resources</phase>
                        <goals>
                            <goal>add-source</goal>
                            <goal>compile</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>scala-test-compile</id>
                        <phase>process-test-resources</phase>
                        <goals>
                            <goal>testCompile</goal>
                        </goals>
                    </execution>
                    <execution>
                        <id>scala-doc-generator</id>
                        <phase>package</phase>
                        <goals>
                            <goal>doc-jar</goal>
                        </goals>
                    </execution>
                </executions>
            </plugin>
        </plugins>
    </build>



更多相關文章
  • Java應用架構設計:模塊化模式與OSGi
    Java應用架構設計:模塊化模式與OSGi本書是Kirk Knoernschild編寫的一本優秀圖書,它通過18個模式列表來講解怎樣在應用程序的設計中實現模塊化設計.本書重點介紹了它是如何在設計時能夠有利于架構並展現了怎樣與面向服務的架構進行集成.對其內容詳細閱讀
  • 應用Django構建工作流管理模塊一
    目前基于Django平台的CMS系統很多,Django自帶的權限模塊可實現簡單功能的審批操作,對與複雜流程的審批則無法實現,由于Python語言的強大基因,遂自造輪子,構建了一個工作流管理模塊.第一篇先上圖,查看效果圖.圖1-1 工作流模型定義圖1-2-1 工作流節點定義-基本信息圖1-2-2 工作 ...
  • 如何將Eclipse中構建的Dynamic Web Project發布到tomcat上
            上次講的在Eclipse中配置tomcat存在一個問題,即專案必須在啓動Eclipse後才能訪問,原因是Eclipse默認將Web專案放在Eclipse工作空間中的\.metadata\.plugins\org.eclipse.wst.server.core\tmp0\wtpweba ...
  • 時至今日,如果你的Java專案依然需要啓動一個特定的工具,比如IDE,才能編譯部署,那你的專案不在本文的討論之中,因爲實在落後得太讓人無語了. 好,回歸正題.舊時代的Java世界,構建工具等同于兩個詞Ant 和 Maven. Ant源自Make,同JUnit一樣,它也是一個航班産物(參見<An ...
  • 構建手機模擬環境
    構建手機模擬環境 轉載時請注明出處和作者聯系方式作者聯系方式:李先靜 <xianjimli at hotmail dot com> 在PC上調試應用程序比較在小機上方便得多,所以我們常常在PC上模擬運行手機軟件,直到比較穩定後才到小機上測試.在PC上建立手機模擬運行環境是必不可少的,幸好 ...
  • zxing的源碼中包含很多的模塊,模塊列表如下: core: The core image decoding library, and test code javase: J2SE-specific client code zxingorg: The source behind zxing.org/ ...
  •     在SQL語句的執行計劃中,包含很多字段項和很多模塊,其不同字段代表了不同的含義且在不同的情形下某些字段.模塊顯示或不顯示,下面的描述給出了執行計劃中各字段的含義以及各模塊的描述.       有關執行計劃中各字段模塊的描述請參考: 執行計劃中各字段各模塊描述        有關由SQL語句來 ...
  • Java中的類裝載和初始化模塊
        在Java中,初始化模塊是指用一對"{}"括起來的代碼,可以與構造方法一起來對對象進行初始化.初始化模塊又分爲實例初始化模塊和靜態初始化模塊(只能由類的靜態成員引用,在類裝載時進行調用)    Java中,代碼的執行順序是:    1.裝入類    1.1遞歸裝入父類,直 ...
一周排行
  • HTTP 100Continue繼續 101Switching Protocols切換協定 200OK正常 201Created已創建 202Accepted已接受 203Non-Authoritative Info ...
  • ‍SeleniumWebDriver注意:我們正致力于完善幫助指南的每一個章節,雖然這個章節仍然存在需要完善的地方,不過我們堅信當前你看到的幫助信息是精確無誤的,後續我們會提供更多的指導信息來完善幫助文檔.1.Web ...
  • 定義Scala語言是一種面向對象語言,同時又結合了命令式(imperative)和函數式(functional)編程風格.官網描述:Object-Oriented Meets Functional(面向對象遇到函數式 ...
  •       由國內著名技術社區OSchina鼎力推薦.華章圖書出品.2014年南非螞蟻(高俊峰)最新技術力作:<高效能Linux伺服器構建實戰----系統安全.故障排查.自動化運維與集群架構>,已經上架發 ...
  • <body> <ul > <li>1</li> <li>2</li> <li>3</li> </ul>    ...
  • Modernizr的介紹和使用
    傳統浏覽器目前不會被完全取代,令你難以將最新的 CSS3 或 HTML5 功能嵌入你的網站 ...
  • linux c libcurl的簡單使用
     curl是Linux下一個非常著名的下載庫,通過這個庫,可以很簡單的實現文件的下載等操作 ...
  • import java.io.IOException; import java.io.InputStream; import java.io.InputStreamReader; import java.io.Rea ...
  •     想想還是有必要總結一下,雖然不是什麽技術上的,但多少能有點幫助.下面的術語對照表在看視頻之前有必要好好看看,這樣讓我們看視頻看的更順利一點.     台灣用語 大陸用語 英文程式設計  程序設計  progr ...
  • 71    段伏枥拿的這塊Telechips的開發板所用的主控芯片是TCC7901,相對于AU1200而言,是好得很多了.姑且不說那簡單易懂的編譯安裝環境,光是硬件的搭配就是AU1200所不能比擬的.AU1200並不 ...