Skip to content

A simple-build-tool (sbt) plugin/processor for creating IntelliJ IDEA project files

License

Notifications You must be signed in to change notification settings

danbills/sbt-idea

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Requirements

Installation

Add the following lines to ~/.sbt/plugins/build.sbt or PROJECT_DIR/project/plugins.sbt

addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.5.1")

To use the latest snapshot version, add also Sonatype snapshots repository resolver into the same plugins.sbt file:

resolvers += "Sonatype snapshots" at "http://oss.sonatype.org/content/repositories/snapshots/"

addSbtPlugin("com.github.mpeltonen" % "sbt-idea" % "1.6.0-SNAPSHOT")

Usage

Basic project

Use the gen-idea sbt task to create Idea project files.

Project with dependencies

If you have two sbt projects A and B, and A depends on B, then use the gen-idea sbt task on Project A to create Idea project files for both projects.

The projects need to be set up in the following way:

Project A:

import sbt._

object A extends Build {
  lazy val A = Project("A", file(".")) aggregate(B) dependsOn(B)
  lazy val B = RootProject(file("../B"))
}

Project B:

import sbt._

object B extends Build {
  lazy val B = Project("B", file("."))
}

Sources and javadocs

By default, classifiers (i.e. sources and javadocs) of dependencies are loaded if found and references added to Idea project files. If you don't want to download/reference them, use command 'gen-idea no-classifiers'.

Configuration settings

Exclude some folders

In your build.sbt:

ideaExcludeFolders += ".idea"

ideaExcludeFolders += ".idea_modules"

Or in your Build.scala:

...
import org.sbtidea.SbtIdeaPlugin._
...
lazy val myproject = Project(id = "XXXX" ....)
.settings(ideaExcludeFolders := ".idea" :: ".idea_modules" :: Nil)

TODO...

License

Licensed under the New BSD License. See the LICENSE file for details.

About

A simple-build-tool (sbt) plugin/processor for creating IntelliJ IDEA project files

Resources

License

Stars

Watchers

Forks

Packages

No packages published