I am new to KNIME Development, Please help me

I would like to learn how to work KNIME Analytics Platform with complicated codes.

I am stuck to Contribute to KNIME Analytics Platform Source Code’s thrid section a lot f Get KNIME source code from https://github.com/knime/knime-sdk-setup

I can get the code from https://github.com/knime/knime-core and after I import code in the workspace, Analytics Platform doesn’t run. and if I delete knime-core’s codes I can run Analytics Platform but I can not see any knime-core sources… :weary:

I also saw https://www.knime.com/developers, but there is no for Analytics Platform coding that I want to see…

and there are many errors like this

How can I solve and join to see and code Analytics Platform?

Hi @yang_jae_lee,

If you want to develop a KNIME extension, you do not need to have the knime-core code in your workspace. Modifying knime-core requires you to build and ship a custom version of KNIME-AP if you want other people to use your code. If you have the target platform active, you can access the code of all classes contained in all open source dependencies (e.g. to use them as reference when implementing your code).

Anyway, the AP should start if you have knime-core in your workspace. The error you posted looks like maybe a file got corrupted. Maybe try setting the target platform again or with a fresh eclipse workspace?

best,
Gabriel

1 Like

@gab1one, thank you for your sincere reply.

I have tried to run and try for AP target, it is the simillar problem

I tried same try in Eclipse IDE for RCP and RAP Developers Version: 2018-12 (4.10.0) then I changed into latest Eclipse IDE for RCP and RAP Developers Version: 2019-09 R (4.13.0). but I got the same result.

Below is the selection of KNIME.AP and then the time when I run KNIME Analytics Platform launch.

Below is the one of the part from error log when I get after launch

And I also added API BASE line

What do I miss for setup for KNIME Analytics Platform?

I added the error log file.
error log.txt (799.8 KB)

A couple thoughts:

  • i see you’ve imported a bunch of projects, many of which are not compiling as seen in your screenshots; i would start simple with just importing the sdk.setup and attempting to launch KAP with that being the only project in your workspace (and i would definitely stop importing projects after one of them failed to compile until i got it building.)
  • even though the read-me says “Eclipse … at least version 4.7.x” i wouldn’t recommend to, and personally do not, use any version later than 4.7.x; i do this for other RAP projects as well (i.e if the RAP targets a release under 2019-09, then i keep my IDE on 2019-09.)

@quaeler Thank you for your interested in this post.

About your first comment, I don’t stuck until Contribute to KNIME Analytics Platform Source Code 's second order in https://github.com/knime/knime-sdk-setup but after importing projects from https://github.com/knime/knime-core and also changed KNIME-AP.target, it is the same both before and after.:sweat:

About your second comment, I use now Eclipse IDE for RCP and RAP Developers Version: 2019-09 R (4.13.0) which is latest I think.

Hmm… sorry for the confusion in my post, let me rephrase more clearly:

  1. Download and use Eclipse for RAP/RCP 4.7.3(a)
  2. Remove all projects except for sdk-setup.
  3. ? Can you launch KNIME from your IDE at this stage (with no other projects imported?)
    3a. No → stop and update this thread
  4. Yes → Import knime-core’s org.knime.core (i don’t know why you’re importing KNIME source code projects… why are you importing KNIME source code projects? you don’t need to import them. anyway…)
  5. Does it build the project without error?
    5a. No → look at the Problems view. What are they? Stop and update this thread
  6. Yes → Import another project that you think you need.
  7. GOTO 5.
1 Like

@quaeler

I appreciate your help and concern.

I reached on the 5th step.

The reason is that I would like to learn how to work KNIME Analytics Platform and also interested in GUI based data science.

I have done in 4 step which import org.knime.core.

I got error when I launch KNIME after importing org.knime.core.

Below image shows before launching KNIME and errors.

And also I attached log file after run.

error log.txt (8.6 KB)

Ok - but, step 3 was ok? (You could launch the app with only the sdk-setup project?)

In that case, do you really need to import org.knime.core? Why?

You can make a new Eclipse plugin at this point which would be a new KNIME node if you so wish. You could download a wizard for your Eclipse install following the instructions here and it will create most of the project for you.

(p.s. the sun has long set here on the US West coast and i’m offline soon - Deutschland will be on soon, maybe… if not - i’ll check in, in roughly 10 hours.)

1 Like

@quaeler
yes, step 3 is okay


error log.txt (1.1 KB)

but I thought there are no for them due to not import projects yet. So I didn’t mentioned previous thread.

do you really need to import org.knime.core => I think it would be helpful to understand KNIME workflow and more interested in platform developement than extention development and also converting import or export workflow and try to contribute KNIME Analytic if my coding skill will be leveled up.

Um, anyway, since one or more KNIME project are imported, I can not run anymore KNIME:disappointed_relieved:

You can reference (for example) org.knime.core as a “plugin dependency” in your plugin, but not import the source code project to your Eclipse.

I agree it’s nice to have the source code around to reference, but if you import the dependency and then MOD1-click on a class name, if it can’t find the source, Eclipse will ask you to locate it, at which point you can tell eclipse where the actual java files are.

My suggestion is to import the sdk-setup project, install the Node Wizard, and then make a new node project through the wizard. That will (should) create a plugin with the right dependencies for a minimal KNIME node.

(ps. seriously offline now!)

@quaeler

I can’t imagine what the real works are from your saying and also how to do actually.

My suggestion is to import the sdk-setup project, install the Node Wizard, and then make a new node project through the wizard. That will (should) create a plugin with the right dependencies for a minimal KNIME node.

I agree that I also need to know node making, but I am more interested in platform development than node extension development from Create a New Java based KNIME Extension . So I post this for asking how to do and find out what I want.

So currently I can not run and see flows of KNIME with KNIME source codes now
https://forum.knime.com/t/i-am-new-to-knime-development-please-help-me/19765/7
:cry:

When you say “platform development”, what do you mean?

Since this is based on Eclipse, a usual way to make a new addition to the desktop platform would be as an Eclipse plugin (and so, again, cite org.knime.core (or whatever) as a dependency - not importing the source code as a project in your IDE.)

@quaeler

I’m in Korea and I waked up.

I tried to find what I faced simillar.

https://forum.knime.com/t/unable-to-launch-the-knime-analytics-from-eclipse/15550/5

https://forum.knime.com/t/how-to-build-a-complete-knime/13246/1

Overall, I would like to know how to debug and inject like System.out.println(“here”); where code flow and local build try and understand first.

And I got stuck here in https://github.com/knime/knime-sdk-setup

3. Get KNIME source code

  • Get the KNIME Analytics Platform source code you want work with as described in the Explore KNIME Analytics Platform Source Code section.

https://forum.knime.com/t/i-am-new-to-knime-development-please-help-me/19765/7

https://forum.knime.com/t/i-am-new-to-knime-development-please-help-me/19765/6

and I faced error when I tried to do as your trying…

I note the screenshot of the build failure of knime-core is complaining about library jars being corrupt. Did you install Git LFS? If you look on the filesystem, do those jar files exist? Are they of a non-trivial byte size? Can you jar tvf them successfully?

Also i noticed in that same screenshot that the KNIME-AP.target has been modified (it has a > prefixing it in the project explorer.) Why is it modified? Is this the target that you’re basing you platform on? If so, can you discard any changes you’ve made, reload it, and re-set it as the target platform.

@quaeler

Why is it modified? Is this the target that you’re basing you platform on? If so, can you discard any changes you’ve made, reload it, and re-set it as the target platform.

I tried to click “update” and “reload” it changes.

Did you install Git LFS?

About this, I skipped. because I use Eclipse git.

And I did not edit jar files and there are already in lib folder.

image
image

Overall, I just imported and it shows these errors not using jar command.

and also I checked as you mentioned

Apparently Eclipse Git sucks as it is not performing LFS.

I just install Git LFS

error numbers are reduced.

So, in https://github.com/knime/knime-sdk-setup, If user use Eclipse git, user also just install Git LFS.

error log a little is different with before
error log.txt (273.4 KB)

That screen shot still shows one of your jars being invalid - you’re still failing to get all of the artifacts out of the git repository.

I tried to do if it is a little problem solve by installing git lfs window just install, remove and install lfs again, that is the root. I think just problem doesn’t show at that time…

anyway I only have this problem?..

@quaeler Do you also have the same problem from initial start?

This screenshot shows the same problem as before (none of the jars in the lib/ folder are valid) - which makes it seem like your LFS has not worked / your git clone did not get the jars, only the the referential pointer versions of them.

If you use the jar tvf again, they will likely throw the same exceptions - also if you look at their file size, they should be in the 10s or 100s of KB, but will probably be a 100 bytes or so if not-LFS’d correctly.

I did not have the same problems from the start, but i know you’re not the only person to have problems; KNIME development isn’t for the faint of heart!