running from intellij on osx

Having problems with building or using the JCEF Java binding? Ask your questions here.

running from intellij on osx

Postby inx » Tue May 08, 2018 7:54 am

hello.

i'm new to cef/jcef and need some assistance to run jcef from IntelliJ on osx...
as far is i understand cef on osx needs the correct application-bundle folder-structure to function.

JCEF Version = 3.3325.179
CEF Version = 3.3325.1755
Chromium Version = 65.0.3325.181

building jcef worked fine, the example application runs.

i used
Code: Select all
tools/make_distrib.sh macosx64
to get binary_distrib/macosx64/bin/jcef_app.app

in some forum-thread i was reading to set the application bundle as the projects working directory, i did so.
java.library.path points to Contents/Java inside this app-bundle.

for libjcef.dylib to resolve it's dependencies i changed it so it points to:
@loader_path/../Frameworks/Chromium Embedded Framework.framework/Chromium Embedded Framework

i also changed "jcef Helper.app/Contents/MacOS/jcef Helper" so it points to the CEF-framework relative to it's path:
@executable_path/../../../Chromium Embedded Framework.framework/Chromium Embedded Framework

when running simple.MainFrame.java i still get:
Code: Select all
[0508/145008.374953:ERROR:icu_util.cc(138)] icudtl.dat not found in bundle
[0508/145008.377314:ERROR:icu_util.cc(174)] Invalid file descriptor to ICU data received.


seems the paths are not set up correctly... not sure how to solve this.

thanks for any advice.
inx
Newbie
 
Posts: 5
Joined: Tue May 08, 2018 7:12 am

Re: running from intellij on osx

Postby joxrox » Fri May 11, 2018 3:30 pm

I have gone through this same process and had the same issue. If you figure it out please post it here!
joxrox
Newbie
 
Posts: 8
Joined: Thu May 10, 2018 8:12 am

Re: running from intellij on osx

Postby stone » Tue Aug 28, 2018 4:42 am

Hello, I had the same problem, have you solved it?
stone
Newbie
 
Posts: 1
Joined: Tue Aug 28, 2018 4:36 am

Re: running from intellij on osx

Postby piotrkundu » Wed Mar 25, 2020 10:23 am

In
Code: Select all
 bool Context::Initialize(JNIEnv* env, jobject c, jstring helperPath, jstring resourcesPath, jstring localesPath)

I do this
Code: Select all
   
    std::string framework_path = "YOUR_PROJECT_PATH/third_party/cef/cef_binary_80.0.7+gd9fd476+chromium-80.0.3987.132_macosx64/Release/Chromium Embedded Framework.framework";
    CefString(&settings.framework_dir_path).FromString(framework_path);
    return CefInitialize(main_args, settings, app_.get(), NULL);


The key thing was using path to "Chromium Embedded Framework.framework" where as I tried with "Chromium Embedded Framework.framework/Chromium Embedded Framework" and got the same error. So one level too deep. Try that.
piotrkundu
Newbie
 
Posts: 2
Joined: Fri Feb 07, 2020 8:36 am


Return to JCEF Forum

Who is online

Users browsing this forum: No registered users and 18 guests