Git Product home page Git Product logo

Comments (11)

dotta avatar dotta commented on July 4, 2024

The question for me is, why does it work only with a Scala 2.10 nightly? (is your project built against Scala 2.10?)

from docs.

jimfulton avatar jimfulton commented on July 4, 2024

I flailed quite a bit with both 2.8 and 2.9 with both Juno and Indigo.

I got exactly the error reported in the link. Switching to a nightly
build worked.

from docs.

jimfulton avatar jimfulton commented on July 4, 2024

If there's some combination other than a nightly build that you think should work, I'd be happy to try it.

from docs.

dotta avatar dotta commented on July 4, 2024

I'm not an Android developer myself, please bear with me :) My question is what Scala library are you (Android developers) using for your project. Is it the Scala library for Scala 2.10? That would explain why only 2.10 nightly works.

from docs.

jimfulton avatar jimfulton commented on July 4, 2024

The scala library is included with scala-ide, so I'm using whatever comes with scala-ide.

I'm also using using https://github.com/banshee/AndroidProguardScala

as suggested here:

http://scala-ide.org/docs/tutorials/androiddevelopment/index.html

Sorry, I should have cited https://github.com/banshee/AndroidProguardScala
earlier. I thought it was implied by "android". :)

This issue is really mostly/entirely relevant to that tutorial. I should have
made that clear.

from docs.

dotta avatar dotta commented on July 4, 2024

I see. From the AndroidProguardScala's README:

Install the Scala IDE from http://download.scala-ide.org/nightly-update-master-trunk. There's a problem with M3 and Android (it won't always recompile Scala binaries), so you'll want a nightly. (source: https://github.com/banshee/AndroidProguardScala#using-the-plugin, point 1)

Hence, it may make sense to update the documentation to use a Scala IDE bundled with 2.10 because only the nightly works. Though, it would be good to know what is the issue with recompilation mentioned above.

That being said, I'm yet not on clear on what Scala library version is currently bundled with AndroidProguardScala. Is it 2.10.0-SNAPSHOT (https://github.com/banshee/AndroidProguardScala/blob/master/build.sbt)? Would be great to get James input \cc @banshee

from docs.

jimfulton avatar jimfulton commented on July 4, 2024

On Mon, Jan 28, 2013 at 10:52 AM, Mirco Dotta [email protected]:

I see. From the AndroidProguardScala's README:

Install the Scala IDE from
http://download.scala-ide.org/nightly-update-master-trunk. There's a
problem with M3 and Android (it won't always recompile Scala binaries), so
you'll want a nightly. (source:
https://github.com/banshee/AndroidProguardScala#using-the-plugin, point 1)

Doh! I missed that.

Hence, it may make sense to update the documentation to use a Scala IDE
bundled with 2.10 because only the nightly works. Though, it would be good
to know what is the issue with recompilation mentioned above.

That being said, I'm yet not on clear on what Scala library version is
currently bundled with AndroidProguardScala. Is it 2.10.0-SNAPSHOT (
https://github.com/banshee/AndroidProguardScala/blob/master/build.sbt)?
Would be great to get James input \cc @bansheehttps://github.com/banshee

I didn't realize a scala library was being bundled. Sorry. The installed
plugin has:

scala-library-jar-scala-library-2.10.0-RC3.jar

I guess that explains the issue. I bet that this changed since
http://scala-ide.org/docs/tutorials/androiddevelopment/index.html was
written.

I wonder why AndroidProguardScala has to bundle it's own scala.

I wonder if it wouldn't be better for both scala-ide and
AndroidProguardScala to
require a pre-installed scala. Having multiple scala installations
floating around
seems like an opportunity to fail.

Jim

Jim Fulton
http://www.linkedin.com/in/jimfulton
Jerky is better than bacon! http://zo.pe/Kqm

from docs.

banshee avatar banshee commented on July 4, 2024

First, one big problem is the non-existance of a test suite for AndroidProguardScala. I'm still nowhere close to what you would call an accomplished Eclipse plugin developer, so figuring out how you do real tests is still on my todo list. (There are tests for the lower level libraries, but not for the runtime Eclipse stuff).

The recompilation-only-works-with-a-nightly issue: this used to work. For M3, I had a bug report about it not working, and I could see it on my own system. Since it was working with the nightly, though, actually submitting a scala bug report with a useful repro case was low on my list of priorities.

Including a scala-library.jar file: the problem is binary incompatibility. The plugin itself is written in scala, so it needs a scala library. However, I have no idea what scala library the user is going to have (2.9, 2.10.X, ???), and I don't know whether or not it's going to work with my code. But I can't just throw in an unmodified scala library, since I also don't want to interfere with the real one that scala-ide uses. What's in the plugin is a scala-library.jar file run through jarjar, so the package names are all different. The only code that should use that library is AndroidProguardScala itself. It's not used to compile user code in any way (or at least it shouldn't be).

from docs.

banshee avatar banshee commented on July 4, 2024

So yes, it's the library from 2.10 RC3, but everything in AndroidProguardScala is repackaged so that things in scala.* are now com.restphone.scalasubdir.*. I've got banshee/AndroidProguardScala#15 open to remind myself I need to switch to 2.10 release.

from docs.

banshee avatar banshee commented on July 4, 2024

Just pushed v46. It uses 2.10 final.

from docs.

dotta avatar dotta commented on July 4, 2024

Thanks James!

I guess we can close this ticket then.

from docs.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.