Gatling 2.0.0 - RC1 : Compilation Error

Observing following errors while running maven. Please help me with this.

[INFO] — maven-resources-plugin:2.6:testResources (default-testResources) @ gatling-charts-highcharts —
[INFO] Using ‘UTF-8’ encoding to copy filtered resources.
[INFO] Copying 4 resources
[INFO]
[INFO] — maven-compiler-plugin:2.5.1:testCompile (default-testCompile) @ gatling-charts-highcharts —
[INFO] Nothing to compile - all classes are up to date
[INFO]
[INFO] — scala-maven-plugin:3.1.0:testCompile (default) @ gatling-charts-highcharts —
[WARNING] Expected all dependencies to require Scala version: 2.9.3-RC1
[WARNING] net.debasishg:redisclient_2.9.2:2.9 requires scala version: 2.9.3-RC1
[WARNING] com.github.scopt:scopt_2.9.2:2.1.0 requires scala version: 2.9.3-RC1
[WARNING] com.typesafe.zinc:zinc:0.2.1 requires scala version: 2.9.3-RC1
[WARNING] com.typesafe.sbt:incremental-compiler:0.12.1 requires scala version: 2.9.3-RC1
[WARNING] com.typesafe.sbt:incremental-compiler:0.12.1 requires scala version: 2.9.2
[WARNING] Multiple versions of scala libraries detected!
[INFO] /Users/sgs/gatling-maven/src/test/scala:-1: info: compiling
[INFO] Compiling 4 source files to /Users/sgs/gatling-maven/target/test-classes at 1407002539151
[ERROR] /Users/sgs/gatling-maven/src/test/scala/com/sync/Progam1.scala:21: error: not found: value http
[ERROR] val httpConf = http
[ERROR] ^
[ERROR] /Users/sgs/gatling-maven/src/test/scala/com/sync/Progam1.scala:40: error: not found: value scenario
[ERROR] val scn = scenario(“Simple Performance Test”) // A scenario is a chain of requests and pauses
[ERROR] ^
[ERROR] /Users/sgs/gatling-maven/src/test/scala/com/sync/Progam1.scala:57: error: value protocols is not a member of Unit
[ERROR] possible cause: maybe a semicolon is missing before `value protocols’?
[ERROR] ).protocols(httpConf)
[ERROR] ^
[ERROR] three errors found

Hi,

Looking at all the warning and compilation errors you get, it looks like you’re pull a 1.5.x version of Gatling.
You shouldn’t be pulling dependencies built for Scala 2.9 (recognisable at the _2.9… in the dependency’s artifactId), as Gatling uses Scala 2.10 and therefore only uses dependencies built for Scala 2.10.
Are you sure you’re pulling 2.0.0-RC1 ?

Cheers,

Pierre

Hi,

I am just pulling the artifacts from below resources. I have not made any changes to pom.xml

http://gatling.io/download/

io.gatling gatling-charts-highcharts 2.0.0-RC1

Could you share your pom.xml in a gist or pastebin, please?

MPom.xml mentioned below

<?xml version="1.0" encoding="UTF-8"?>
<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/xsd/maven-4.0.0.xsd">
	<modelVersion>4.0.0</modelVersion>
	<groupId>io.gatling</groupId>
	<artifactId>gatling-charts-highcharts</artifactId>
	<version>2.0.0-RC1</version>

	<repositories>
		<repository>
			<id>excilys</id>
			<name>Excilys Repository</name>
			<url>http://repository.excilys.com/content/groups/public</url>
			<releases>
				<updatePolicy>never</updatePolicy>
			</releases>
			<snapshots>
				<enabled>false</enabled>
			</snapshots>
		</repository>
	</repositories>

	<properties>
		<maven.compiler.source>1.6</maven.compiler.source>
		<maven.compiler.target>1.6</maven.compiler.target>
		<scala.version>2.9.3-RC1</scala.version>
		<encoding>UTF-8</encoding>

		<gatling.version>1.4.2</gatling.version>
		<gatling-highcharts.version>1.4.2</gatling-highcharts.version>

		<scala-maven-plugin.version>3.1.0</scala-maven-plugin.version>
	</properties>

	<dependencyManagement>
		<dependencies>
			<dependency>
				<groupId>com.excilys.ebi.gatling</groupId>
				<artifactId>gatling-app</artifactId>
				<version>${gatling.version}</version>
				<exclusions>
					<exclusion>
						<groupId>ch.qos.logback</groupId>
						<artifactId>logback-classic</artifactId>
					</exclusion>
				</exclusions>
			</dependency>
			<dependency>
				<groupId>com.excilys.ebi.gatling</groupId>
				<artifactId>gatling-recorder</artifactId>
				<version>${gatling.version}</version>
			</dependency>
			<dependency>
				<groupId>com.excilys.ebi.gatling.highcharts</groupId>
				<artifactId>gatling-charts-highcharts</artifactId>
				<version>${gatling-highcharts.version}</version>
			</dependency>
			<dependency>
				<groupId>org.scala-lang</groupId>
				<artifactId>scala-library</artifactId>
				<version>${scala.version}</version>
			</dependency>
		</dependencies>
	</dependencyManagement>

	<dependencies>
		<dependency>
			<groupId>com.excilys.ebi.gatling.highcharts</groupId>
			<artifactId>gatling-charts-highcharts</artifactId>
		</dependency>
		<dependency>
			<groupId>com.excilys.ebi.gatling</groupId>
			<artifactId>gatling-app</artifactId>
		</dependency>
		<dependency>
			<groupId>com.excilys.ebi.gatling</groupId>
			<artifactId>gatling-recorder</artifactId>
		</dependency>
		<dependency>
			<groupId>org.scala-lang</groupId>
			<artifactId>scala-library</artifactId>
		</dependency>
	</dependencies>

	<build>
		<sourceDirectory>src/main/scala</sourceDirectory>
		<testSourceDirectory>src/test/scala</testSourceDirectory>
		<pluginManagement>
			<plugins>
				<plugin>
					<groupId>net.alchim31.maven</groupId>
					<artifactId>scala-maven-plugin</artifactId>
					<version>${scala-maven-plugin.version}</version>
				</plugin>
			</plugins>
		</pluginManagement>
		<plugins>
			<plugin>
				<groupId>net.alchim31.maven</groupId>
				<artifactId>scala-maven-plugin</artifactId>
				<executions>
					<execution>
						<goals>
							<goal>compile</goal>
							<goal>testCompile</goal>
						</goals>
					</execution>
				</executions>
			</plugin>
		</plugins>
	</build>
</project>

What you did replaced the groupId, artifactId and version of your module, but that did not change the version of Gatling you’re using, nor the Scala version.
Replace :

	<maven.compiler.source>1.6</maven.compiler.source>
	<maven.compiler.target>1.6</maven.compiler.target>
	<scala.version>2.9.3-RC1</scala.version>
	<encoding>UTF-8</encoding>
	<gatling.version>1.4.2</gatling.version>
	<gatling-highcharts.version>1.4.2</gatling-highcharts.version>

	<scala-maven-plugin.version>3.1.0</scala-maven-plugin.version>

with :

	<maven.compiler.source>1.7</maven.compiler.source>
	<maven.compiler.target>1.7</maven.compiler.target>
	<scala.version>2.10.4</scala.version>
	<encoding>UTF-8</encoding>
	<gatling.version>2.0.0-RC1</gatling.version>
	<gatling-highcharts.version>2.0.0-RC1</gatling-highcharts.version>

	<scala-maven-plugin.version>3.1.6</scala-maven-plugin.version>

And it should work fine.

Cheers,

Pierre

You probably generated this project from the maven archetype.
You should probably try to re-generate a new project structure from the new archetype from 2.0.0-RC1.

Hi,

I cleaned up and re-generated, but still getting below error messages.

[WARNING] The POM for com.excilys.ebi.gatling.highcharts:gatling-charts-highcharts:jar:2.0.0-RC1 is missing, no dependency information available
[WARNING] The POM for com.excilys.ebi.gatling:gatling-app:jar:2.0.0-RC1 is missing, no dependency information available
[WARNING] The POM for com.excilys.ebi.gatling:gatling-recorder:jar:2.0.0-RC1 is missing, no dependency information available
[INFO] ------------------------------------------------------------------------
[INFO] BUILD FAILURE
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 0.362 s
[INFO] Finished at: 2014-08-02T22:01:33-07:00
[INFO] Final Memory: 6M/123M
[INFO] ------------------------------------------------------------------------
[ERROR] Failed to execute goal on project gatling-charts-highcharts: Could not resolve dependencies for project io.gatling:gatling-charts-highcharts:jar:2.0.0-RC1: The following artifacts could not be resolved: com.excilys.ebi.gatling.highcharts:gatling-charts-highcharts:jar:2.0.0-RC1, com.excilys.ebi.gatling:gatling-app:jar:2.0.0-RC1, com.excilys.ebi.gatling:gatling-recorder:jar:2.0.0-RC1: Failure to find com.excilys.ebi.gatling.highcharts:gatling-charts-highcharts:jar:2.0.0-RC1 in was cached in the local repository, resolution will not be reattempted until the update interval of all-repos has elapsed or updates are forced →

<maven.compiler.source>1.7</maven.compiler.source>

	<maven.compiler.target>1.7</maven.compiler.target>

	<scala.version>2.10.4</scala.version>

	<encoding>UTF-8</encoding>
	<gatling.version>2.0.0-RC1</gatling.version>

	<gatling-highcharts.version>2.0.0-RC1</gatling-highcharts.version>

	<scala-maven-plugin.version>3.1.6</scala-maven-plugin.version>

Regards,
Santhosh

I don’t know what you’re doing, but you didn’t just generate a new project. I’m pretty sure that you then pasted some elements from the pom.xml from your Gatling 1 based project.
Honestly, the error is really obvious and is one of the first things mentioned in the migration guide: http://gatling.io/docs/2.0.0-RC1/project/migration_guides/1.5.x-to-2.0.0-RC1.html#package-and-groupid-changes

From now on, please first read the documentation.

My appologies. I had to completely delete my IDE and all the caches to make it work.

Thank you