Hi @urlxd,
imo this is not really a processing question, but rather a java one…
Also don’t know what OS you are working on so assuming Windows by using processing java mode.
Further not knowing if you want to create a contributed library or only some function you want provide for yourself.
if first one, look here:
if the latter you can build a simple library depending on your java knowledge yourself.
Just a demonstration not a recommendation
- create a directory structured for your java files and add some functionallity
In a command prompt this could look like:
c:\> mkdir c:\mylib\my\tools c:\> cd /D c:\mylib c:\mylib>
- create your java file(s) ie:
first file: c:\mylib\my\tools\MyStaticTools.java
ie: provides static methods for use as an example
package my.tools; public class MyStaticTools { public static int addValues(int a, int b) { return a+b; } public static int subValues(int a, int b) { return a-b; } }
second file: c:\mylib\my\tools\MyClassTools.java
ie: provides class methods for use as an example
package my.tools; public final class MyClassTools { public int multValues(int a, int b) { return a*b; } public int powValue(int a) { return a*a; } }
- back in the command prompt (assuming you are already in the directory from step 1) type :
assumingc:\processing
is the directory where you’ve installed processing
- The first command build
.class
files from you.java
files into abin
directory
c:\mylib>c:\processing\java\bin\javac.exe -d bin my\tools\*
- The second command build a structured
.jar
library from your.class
files
c:\mylib>c:\processing\java\bin\jar.exe -cf mytools.jar -C bin my
As a final result you should see a mytools.jar
file in the directory.
The content of the mytools.jar
can be verified afterwards by command
c:\mylib>c:\processing\java\bin\jar.exe -tf mytools.jar
And should look like:
META-INF/ META-INF/MANIFEST.MF my/ my/tools/ my/tools/MyClassTools.class my/tools/MyStaticTools.class
Afterwards drag and drop that file onto your PDE Window. This will create a folder named code
in your sketch folder and loads the jar file for usage. If that all was successfully you can then use the provided functions in your sketch (minimalistic sketch example):
import my.tools.MyStaticTools;
import my.tools.MyClassTools;
println(MyStaticTools.addValues(1,2));
MyClassTools mytools = new MyClassTools();
println(mytools.powValue(2));
exit();
The console output:
3
4
Cheers
— mnse
EDIT:: fix typo