`
tianzhihehe
  • 浏览: 20953 次
  • 性别: Icon_minigender_1
  • 来自: 广州
社区版块
存档分类
最新评论

scala ide scalatest maven eclipse 开发环境配置

 
阅读更多

在eclipse建立一个scala 的meven工程,需要使用的模板是

-DarchetypeGroupId=org.scala-tools.archetypes \
-DarchetypeArtifactId=scala-archetype-simple

然后,会遇到几个问题:

1,maven的模板是什么,这个通过上述的文字已经解决。

2,Maven报Plugin execution not covered by lifecycle configuration,这个问题通过pluginManagement来解决,详见参考链接。

3,通常,maven只能够建立一个java工程,这时候,需要进行如下操作,变成一个scala工程

project name --> Configure --> Add scala nature

eclipse scala IDE自带的scala包就被加进来了,这个工程就是scala工程。详见参考链接。

4,scala IDE的scala包的版本通常与pom里面的版本并不一样,所以要把Pom里面的版本的版本号做一个修改,具体那个版本要看具体情况。要把第三方包的一些scala的依赖给去除掉

<exclusions>

<exclusion>

      <groupId>org.scala-lang</groupId>

      <artifactId>scala-library</artifactId>

      </exclusion>

      </exclusions>

 

配置好之后三个文件如下:

.classpath

<?xml version="1.0" encoding="UTF-8"?>
<classpath>
	<classpathentry kind="src" output="target/classes" path="src/main/scala">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="src" output="target/test-classes" path="src/test/scala">
		<attributes>
			<attribute name="optional" value="true"/>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="con" path="org.scala-ide.sdt.launching.SCALA_CONTAINER"/>
	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/J2SE-1.5">
		<attributes>
			<attribute name="maven.pomderived" value="true"/>
		</attributes>
	</classpathentry>
	<classpathentry kind="output" path="target/classes"/>
</classpath>

 

.project

<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
	<name>beginscala</name>
	<comment></comment>
	<projects>
	</projects>
	<buildSpec>
		<buildCommand>
			<name>org.scala-ide.sdt.core.scalabuilder</name>
			<arguments>
			</arguments>
		</buildCommand>
		<buildCommand>
			<name>org.eclipse.m2e.core.maven2Builder</name>
			<arguments>
			</arguments>
		</buildCommand>
	</buildSpec>
	<natures>
		<nature>org.scala-ide.sdt.core.scalanature</nature>
		<nature>org.eclipse.jdt.core.javanature</nature>
		<nature>org.eclipse.m2e.core.maven2Nature</nature>
	</natures>
</projectDescription>

 

pom.xml

<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
  <modelVersion>4.0.0</modelVersion>
  <groupId>com.thomas</groupId>
  <artifactId>beginscala</artifactId>
  <version>0.0.1-SNAPSHOT</version>
  <name>${project.artifactId}</name>
  <description>My wonderfull scala app</description>
  <inceptionYear>2010</inceptionYear>
  <licenses>
    <license>
      <name>My License</name>
      <url>http://....</url>
      <distribution>repo</distribution>
    </license>
  </licenses>

  <properties>
    <maven.compiler.source>1.5</maven.compiler.source>
    <maven.compiler.target>1.5</maven.compiler.target>
    <encoding>UTF-8</encoding>
    <scala.version>2.11.2</scala.version>
    <specs.version>2.9.0</specs.version>
  </properties>

<!--
  <repositories>
    <repository>
      <id>scala-tools.org</id>
      <name>Scala-Tools Maven2 Repository</name>
      <url>http://scala-tools.org/repo-releases</url>
    </repository>
  </repositories>

  <pluginRepositories>
    <pluginRepository>
      <id>scala-tools.org</id>
      <name>Scala-Tools Maven2 Repository</name>
      <url>http://scala-tools.org/repo-releases</url>
    </pluginRepository>
  </pluginRepositories>
-->
  <dependencies>

    <!-- Test -->
    <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.8.1</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>org.scala-tools.testing</groupId>
      <artifactId>specs_${specs.version}</artifactId>
      <version>1.6.8</version>
      <scope>test</scope>
      <exclusions>
		<exclusion>
      	<groupId>org.scala-lang</groupId>
      	<artifactId>scala-library</artifactId>
      	</exclusion>
      </exclusions>
    </dependency>
    <dependency>
      <groupId>org.scalatest</groupId>
      <artifactId>scalatest</artifactId>
      <version>1.2</version>
      <scope>test</scope>
    </dependency>
  </dependencies>

  <build>
    <sourceDirectory>src/main/scala</sourceDirectory>
    <testSourceDirectory>src/test/scala</testSourceDirectory>
    <pluginManagement>
    	<plugins>
      <plugin>
        <groupId>org.scala-tools</groupId>
        <artifactId>maven-scala-plugin</artifactId>
        <version>2.15.0</version>
        <executions>
          <execution>
            <goals>
              <goal>compile</goal>
              <goal>testCompile</goal>
            </goals>
            <configuration>
              <args>
                <arg>-make:transitive</arg>
                <arg>-dependencyfile</arg>
                <arg>${project.build.directory}/.scala_dependencies</arg>
              </args>
            </configuration>
          </execution>
        </executions>
      </plugin>
      <plugin>
        <groupId>org.apache.maven.plugins</groupId>
        <artifactId>maven-surefire-plugin</artifactId>
        <version>2.6</version>
        <configuration>
          <useFile>false</useFile>
          <disableXmlReport>true</disableXmlReport>
          <!-- If you have classpath issue like NoDefClassError,... -->
          <!-- useManifestOnlyJar>false</useManifestOnlyJar -->
          <includes>
            <include>**/*Test.*</include>
            <include>**/*Suite.*</include>
          </includes>
        </configuration>
      </plugin>
    </plugins>
    </pluginManagement>
  </build>
</project>

 

 

reference

http://my.oschina.net/aaaaaaaa/blog/12473

http://blog.csdn.net/xxd851116/article/details/25197373

http://stackoverflow.com/questions/3243984/scala-ide-error-projectname-is-not-a-scala-project

http://scala-ide.org/docs/current-user-doc/faq/index.html

 

分享到:
评论

相关推荐

    Scala-IDE(for Eclipse Juno Scala 2.9)

    Scala IDE,全称为Scala Integrated Development Environment,是一款专为Scala编程语言设计的集成开发环境,它构建于Eclipse平台上。在本例中,我们讨论的是针对Eclipse Juno版本的Scala IDE,支持Scala 2.9版本。...

    scala eclipse maven环境搭建

    总结来说,要搭建Scala、Eclipse和Maven的开发环境,你需要安装Eclipse和Scala IDE插件,配置Maven,创建Maven Scala项目,并在`pom.xml`中管理依赖。这个环境能够支持你进行高效的Scala开发,利用Maven自动化构建...

    Eclipse_plugin_ScalaIDE_4.0

    Eclipse Plugin ScalaIDE 4.0 是一个专为Eclipse集成开发环境设计的开源插件,专注于Scala语言的开发支持。这个版本是针对Eclipse 4.0版本优化的,因为其后续版本4.1存在一些已知的问题,所以用户可能会更倾向于选择...

    Scala+maven安装方法.docx

    Scala IDE 是一个基于 Eclipse 平台的集成开发环境,提供了许多功能强大的插件和工具。下载 Scala IDE 可以通过官方网站上的链接"http://scala-ide.org/download/sdk.html",选择合适的版本下载。下载完成后,解压缩...

    eclipse集成maven+scala笔记

    本文主要讲述了Eclipse中集成Maven和Scala的过程,包括JDK和Scala-SDK的安装和配置、Eclipse和Scala-IDE插件的安装、m2eclipse-scala插件的安装和设置Archetype等。通过这些步骤,可以在Eclipse中使用Maven和Scala...

    ScalaIDE第一部分(共六部分)

    ScalaIDE是专为Scala编程语言设计的一款集成开发环境(IDE),它为Scala程序员提供了丰富的功能,包括代码编辑、调试、构建工具以及代码分析等。在本系列的第一部分中,我们将探讨ScalaIDE的基础设置和基本使用方法,...

    ScalaIDE(第五部分)

    ScalaIDE是专为Scala编程语言设计的一款集成开发环境(IDE),它为开发者提供了丰富的功能,以提高编写、调试和管理Scala代码的效率。在ScalaIDE的第五部分中,我们将深入探讨一些高级特性和最佳实践,这些内容对于...

    eclipse-Scala插件

    "Eclipse Scala插件"是专门为Eclipse集成开发环境设计的一款扩展工具,它使得在Eclipse中编写、调试和管理Scala项目变得方便而高效。Scala是一种强大的、多范式的编程语言,融合了面向对象和函数式编程的特性,为...

    ScalaIDE第三部分(共六部分)

    ScalaIDE是专为Scala编程语言设计的一款集成开发环境(IDE),它基于Eclipse平台,提供了丰富的功能来支持Scala开发者进行高效编码、调试和项目管理。本篇将详细讲解ScalaIDE的第三部分,涵盖其核心特性、使用技巧以及...

    eclipse scala 插件 离线安装包

    Eclipse Scala插件是开发Scala语言程序的重要工具,它为Eclipse IDE提供了对Scala语言的全面支持。在没有网络连接或者网络环境不稳定的情况下,离线安装包成为了安装该插件的理想选择。以下将详细介绍如何使用...

    scalor-maven-plugin:用于Java,Scala,Scala.macro,Scala.js,Scala.native,Eclipse和Maven的构建集成器

    为Java,Scala,Scala.macro,Scala.js,Scala.native,Eclipse和Maven构建集成器。 安装 生产发布 开发发布 适用于Scala IDE 4.7的Scalor插件1.X 相似的插件 入门 设置 建立并研究 插件功能 Scala 新增量 使用...

    eclipse-Scala不兼容的更新包

    在IT行业中,开发和调试大数据处理工具如Spark时,正确的环境配置至关重要。本文将深入探讨“eclipse-Scala不兼容的更新包”这一问题,以及如何解决Spark与Scala版本不匹配的问题。 首先,Spark是一个流行的分布式...

    eclipse-scala.rar

    Eclipse Scala是一款强大的集成开发环境(IDE),专为Scala编程语言设计,同时也支持Java代码的开发。Scala是一种多范式编程语言,它结合了面向对象和函数式编程的概念,提供了更高层次的抽象,使得开发者能够编写出...

    scalatest-3.2.x

    - **安装与配置**:将 ScalaTest 添加为项目的依赖,通过 SBT 或 Maven 的配置文件引入相应的库。 - **编写测试**:创建测试类,选择合适的测试风格,并使用 ScalaTest 提供的工具编写测试用例。 - **运行测试**...

    ecosystem:一组用于构建Scala IDE生态系统更新站点的Maven项目

    这是生态系统构建器,这是一个基于的系统,它使用Scala-IDE在Eclipse,Scala和Scala-IDE的特定风味之外,在Eclipse更新站点内构建和集成与Scala相关的插件。 该项目源的最新版本托管在: : 遗产 stable-scala-ide-...

    scala-ide-plugin.g8:用于基于 Scala IDE 的 Eclipse 插件的 Giger8 模板

    基于 Scala IDE 的 Eclipse 插件的 Giter8 模板。 此模板生成 5 个 Eclipse 插件: 插件本身 plugin.tests片段 Eclipse 功能 Eclipse 源功能 Eclipse 更新站点 这些项目可以很容易地导入到 Eclipse 中。 此外,您...

    windows 下搭建eclipse的hadoop开发环境.rar_SPARKK_blew1bh_manufacturingkf

    总之,搭建Windows下的Eclipse Hadoop开发环境涉及多个步骤,包括Eclipse的安装、插件配置、Hadoop和Spark环境设置,以及编写和调试Spark程序。通过这样的环境,开发者可以高效地进行大数据项目开发,实现数据的处理...

    eclipse scala 插件part1

    Eclipse Scala 插件是开发Scala程序的重要工具,它为Eclipse IDE提供了强大的Scala语言支持。在本部分,我们将深入探讨这个插件的功能、安装过程以及如何利用它来提升Scala编程的效率。 首先,让我们了解Scala语言...

    Scala-Maven-Template:Scala Maven项目是空项目,用于为Scala项目配置Maven

    Scala-Maven-Template 是一个专为Scala开发设计的Maven项目模板,它的主要目的是简化Scala开发者在使用Maven构建和管理项目时的初始配置过程。Maven是一个强大的Java项目管理和集成工具,它可以帮助开发者自动化构建...

Global site tag (gtag.js) - Google Analytics