summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorAdriaan Moors <adriaan.moors@epfl.ch>2012-07-02 06:09:01 -0700
committerAdriaan Moors <adriaan.moors@epfl.ch>2012-07-02 06:09:01 -0700
commit33936243bdf597e438de8d10ae7b3ed30454be9f (patch)
tree7e9bf2965a9edb1181c3eb0e06bbe21209c07419 /src
parentb0d70beb50e9d7946166f0218cf42bc1d9850754 (diff)
parent49169e2123d13132db7bfa1a16ccf20cad3d2124 (diff)
downloadscala-33936243bdf597e438de8d10ae7b3ed30454be9f.tar.gz
scala-33936243bdf597e438de8d10ae7b3ed30454be9f.tar.bz2
scala-33936243bdf597e438de8d10ae7b3ed30454be9f.zip
Merge pull request #812 from dragos/new-eclipse-project-files
Improved Eclipse project files and documentation
Diffstat (limited to 'src')
-rw-r--r--src/eclipse/README23
-rw-r--r--src/eclipse/README.md52
-rw-r--r--src/eclipse/reflect/.classpath1
-rw-r--r--src/eclipse/scala-compiler/.classpath2
4 files changed, 54 insertions, 24 deletions
diff --git a/src/eclipse/README b/src/eclipse/README
deleted file mode 100644
index 58dbd83815..0000000000
--- a/src/eclipse/README
+++ /dev/null
@@ -1,23 +0,0 @@
-Eclipse project files
-=====================
-
-Import all projects inside Eclipse by choosing File/Import Existing Projects
-and navigate to src/eclipse. Check all projects and click ok.
-
-IMPORTANT
-=========
-
-You need to define a `path variable` inside Eclipse. Define SCALA_BASEDIR in
-Preferences/General/Workspace/Linked Resources. The value should be the absolute
-path to your scala checkout. All paths in project files are relative to this one,
-so nothing will work before you do so.
-
-DETAILS
-=======
-
-The compiler project depends on the library, reflect, asm and fjbg projects. The
-builder will take care of the correct ordering, and changes in one project will
-be picked up by the dependent projects.
-
-The output directory is set to be build/quick, so the runner scripts in quick
-work as they are (run an ant build to have the generated once) \ No newline at end of file
diff --git a/src/eclipse/README.md b/src/eclipse/README.md
new file mode 100644
index 0000000000..7ef775218b
--- /dev/null
+++ b/src/eclipse/README.md
@@ -0,0 +1,52 @@
+Eclipse project files
+=====================
+
+Import all projects inside Eclipse by choosing File/Import Existing Projects
+and navigate to src/eclipse. Check all projects and click ok.
+
+IMPORTANT
+=========
+
+1. You need to define a `path variable` inside Eclipse. Define SCALA_BASEDIR in
+Preferences/General/Workspace/Linked Resources. The value should be the absolute
+path to your scala checkout. All paths in project files are relative to this one,
+so nothing will work before you do so.
+
+2. The Eclipse Java compiler does not allow certain calls to restricted APIs in the
+JDK. The Scala library uses such APIs, so you'd see this error:
+
+ Access restriction: The method compareAndSwapObject(Object, long, Object, Object)
+ from the type Unsafe is not accessible due to restriction on required library.
+You can *fix* it by allowing calls to restricted APIs in `Java=>Compiler=>Errors/Warnings=>Deprecated and Restricted API`
+settings.
+
+3. The IDE guesses the Scala library version by looking for `library.properties` inside
+the library jar. The `scala-library` project does not have such a file, so you will see
+an error about incompatible libraries. You can work around it by adding a `library.properties`
+inside `src/library` with the following contents:
+
+ #Mon, 04 Jun 2012 02:08:56 +0200
+ version.number=2.10.0-20120603-141530-b34313db72
+ maven.version.number=2.10.0-SNAPSHOT
+ osgi.version.number=2.10.0.v20120603-141530-b34313db72
+ copyright.string=Copyright 2002-2011, LAMP/EPFL
+
+4. Project files are tracked by Git, so adding them to `.gitignore` won't prevent them
+from being shown as dirty in `git status`. You can still ignore them by telling Git to
+consider them unchanged:
+
+ git update-index --assume-unchanged `find src/eclipse -iname .classpath -or -iname .project`
+
+If you want to go back to normal (for instance, to commit your changes to project files), run:
+
+ git update-index --no-assume-unchanged `find src/eclipse -iname .classpath -or -iname .project`
+
+DETAILS
+=======
+
+The compiler project depends on the library, reflect, asm and fjbg projects. The
+builder will take care of the correct ordering, and changes in one project will
+be picked up by the dependent projects.
+
+The output directory is set to be build/quick, so the runner scripts in quick
+work as they are (run an ant build to have them generated once) \ No newline at end of file
diff --git a/src/eclipse/reflect/.classpath b/src/eclipse/reflect/.classpath
index 2a764d5142..3fb1d08d4d 100644
--- a/src/eclipse/reflect/.classpath
+++ b/src/eclipse/reflect/.classpath
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="reflect"/>
+ <classpathentry combineaccessrules="false" kind="src" path="/scala-library"/>
<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/JavaSE-1.6"/>
<classpathentry kind="output" path="build-quick-reflect"/>
diff --git a/src/eclipse/scala-compiler/.classpath b/src/eclipse/scala-compiler/.classpath
index ff3b63f3ca..e0264b9856 100644
--- a/src/eclipse/scala-compiler/.classpath
+++ b/src/eclipse/scala-compiler/.classpath
@@ -1,6 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="compiler"/>
+ <classpathentry combineaccessrules="false" kind="src" path="/reflect"/>
<classpathentry combineaccessrules="false" kind="src" path="/scala-library"/>
<classpathentry combineaccessrules="false" kind="src" path="/fjbg"/>
<classpathentry combineaccessrules="false" kind="src" path="/asm"/>
@@ -9,6 +10,5 @@
<classpathentry kind="lib" path="lib/ant/ant.jar"/>
<classpathentry kind="lib" path="lib/jline.jar"/>
<classpathentry kind="lib" path="lib/msil.jar"/>
- <classpathentry combineaccessrules="false" kind="src" path="/reflect"/>
<classpathentry kind="output" path="build-quick-compiler"/>
</classpath>