laas / fape

FAPE (Flexible Acting and Planning Environment) is a constraint-based planner for the ANML language.
BSD 2-Clause "Simplified" License
31 stars 7 forks source link

Install issues #7

Closed ascandal closed 3 years ago

ascandal commented 3 years ago

On MacOS Big Sur 11.5.2

scala brew install scala sdkman curl -s "https://get.sdkman.io" | bash sbt and java sdk install java $(sdk list java | grep -o "8\.[0-9]*\.[0-9]*\.hs-adpt" | head -1) sdk install sbt

note brew install sbt did not seem to play nice

From root directory fape sbt compile

sbt compile this step completes successfully, although with some log warnings.

[success] Total time: 26 s, completed Aug 26, 2021 6:25:37 PM

sbt pack

Fails right away

[error] Not a valid command: pack (similar: tasks)
[error] Not a valid project ID: pack
[error] Expected ':'
[error] Not a valid key: pack (similar: package, packageDoc, packageSrc)
[error] pack
[error]     ^

After this I went to https://github.com/xerial/sbt-pack and notice there are a lot of newer versions.

Docker

Ideally would like to install fape inside an ubuntu docker. I had a lot of trouble trying to install sbt in docker and gave up.

I'm new to scala and sbt. Not sure if I'm doing something wrong or using out of date packages or not enabling packages correctly.

arbimo commented 3 years ago

Hello. Indeed the usage of sbt-pack in the documentation is outdated. I have updated them to use sbt assembly that will produce a single JAR file will all dependencies.

The "assembly" jar file produced should only require a Java Runtime Environment (JRE) to be run on any platform (regardless of the platform on which it was compiled). Thus if you compile it on macOS, you can then place the assembly jar in a docker container with java and that's it.

Note that in the releases, there are some precompiled binaries as well. They are slightly outdated but should be functional.

ascandal commented 3 years ago

Thank you. Worked like a charm.