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遞歸裝入父類,直 ...
一周排行
  •  在Oracle中,最高效的刪除重複記錄方法 ( 因爲使用了ROWID) ,ROWID包含了表中記錄的物理位置信息..ORACLE采用索引(INDEX)實現了數據和存放數據的物理位置(ROWID)之間的聯系. 通常索 ...
  • 在使用WordPress的過程中,我們少不了要對數據庫進行修改操作,比如,更換域名.修改附件目錄.批量修改文章內容等等.這個時候,使用SQL查詢語句可以大大簡化我們的工作量. 關于如何操作SQL查詢語句,請移步< ...
  • 香港有六所比較好的大學:香港中文大學.香港大學.香港理工大學.香港城市大學.香港科技大學和香港浸會大學,其中中文大學和香港大學建校較早.申請香港的大學與申請美國大學的程序大致差不多,但也有不同之處.下面大致介紹一下. ...
  • 注:ICE_JNIRegistry.dll 和registry.jar這兩個文件可在我的資源中下載     如果你在系統中需要經常使用DOS進入某個文件夾,一般的做法就是打開"運行",在命令文本框 ...
  •  在Redis 3.0集群(一)中講了Redis集群的基本搭建.這一節主要講對Redis集群的操作.添加Master節點到集群按照Redis集群一的方式,創建端口爲7006的新實例,並啓動該實例將7006添加到集群: ...
  • Hibernate,JPA 對象關系映射之簡單映射策略
    簡單映射近年來 ORM(Object-Relational Mapping,對象關系映射, ...
  • Mybatis 批量更新
    第一種方式[html] view plaincopy<update id=" ...
  • 查看linux內核版本號的三種命令:第一種:登錄linux,在終端輸入 cat /proc/version   第二種:登錄linux,在終端輸入 uname -a   即列出linux的內核版本號  第三種:在Li ...
  • Android 帶選擇框的listview
        本文實現了一個帶選擇框的listview,其中參考到了android_diordn ...
  • 轉自:http://www.eoeandroid.com/thread-16-1.htmlActivity之間簡單的數據傳遞,可能經常用,今天遇到要傳遞一個ArrayList<MyClass> ...