andytill / erlyberly

erlang tracing for the masses
https://twitter.com/erlyberlytips
GNU General Public License v3.0
694 stars 43 forks source link

I can't compile on mac m1. #179

Open dskliarov opened 2 years ago

dskliarov commented 2 years ago

I install java with homebrew, but getting this error ....package javafx.beans.property does not exist .... ....hextstar/DataRow.java:[11,13] cannot find symbol symbol: class StringProperty location: class hextstar.DataRow

paulo-ferraz-oliveira commented 2 years ago

This reply is probably (very) late, but might help future users. I had a similar issue. JavaFX stopped being bundled with Java since Java 11. You have to add the dependencies to pom.xml. Check @ostera's suggestion at https://github.com/andytill/erlyberly/pull/176. This will allow you to compile, but I still have a problem running the app.: "Error. JavaFX runtime components are missing..."

paulo-ferraz-oliveira commented 2 years ago

I also had a couple of warnings (still have some) that I started solving by adding

<plugin>
    <groupId>org.apache.maven.plugins</groupId>
    <artifactId>maven-compiler-plugin</artifactId>
    <version>2.3.2</version>
    <configuration>
        <encoding>UTF-8</encoding>
        <compilerArgument>-Xlint:unchecked</compilerArgument>
    </configuration>
</plugin>

to pom.xml.

paulo-ferraz-oliveira commented 2 years ago

To get rid of the final warning I changed (pom.xml) appendAssemblyId from false to true. (still not sure about the impact of this)...

At the same time, and since I'm on OTP 25, I had to tweak the Erlang code to not use erlang:get_stacktrace(), but get the stack trace from the exception clause heads.

paulo-ferraz-oliveira commented 2 years ago

This got rid of all warnings, but it still doesn't allow the application to run. I know I can do

java --module-path /path_to_jfx_sdk/lib --add-modules=javafx.controls,javafx.fxml -jar target/*.jar

and have it run, but am looking to have those elements in the path, and not have to specify them all the time.

paulo-ferraz-oliveira commented 2 years ago

This might've done the trick (it worked for me). I installed liberica's OpenJDK version (https://bell-sw.com/pages/downloads/) added it to the path and ran (as in the README.md) java -jar target/*.jar.

Now I have other issues, but it'll require debugging Java, since a few years have passed since the code changed so parts of it might be outdated.

(will try to post my findings here, if I can move forward)

paulo-ferraz-oliveira commented 2 years ago

I eventually did a lot of stuff and updated a lot of code (for a more recent Java implementation), so I created a fork for this, but I'm not actively recommending it. Changes to make this work, as-is, in this repo. are mostly around FontAwesome and the JDK you use.