EMF Model with reference to gurobi library cant be loaded in a new eclipse instance - eclipse-emf

i tried to create a new eclipse instance, inorder to register/install my metamodel and to inorder to use the model correctly in the VSP. However I faced an error when I tried to reference the metamodel in the .odesign:
java.lang.reflect.InvocationTargetException
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:443)
at org.eclipse.jface.operation.ModalContext.run(ModalContext.java:352)
at org.eclipse.jface.dialogs.ProgressMonitorDialog.run(ProgressMonitorDialog.java:470)
at org.eclipse.ui.internal.progress.ProgressManager$RunnableWithStatus.run(ProgressManager.java:1117)
at org.eclipse.swt.custom.BusyIndicator.showWhile(BusyIndicator.java:74)
at org.eclipse.ui.internal.progress.ProgressManager.lambda$27(ProgressManager.java:996)
at org.eclipse.swt.widgets.Synchronizer.syncExec(Synchronizer.java:236)
at org.eclipse.ui.internal.UISynchronizer.syncExec(UISynchronizer.java:133)
at org.eclipse.swt.widgets.Display.syncExec(Display.java:6012)
at org.eclipse.ui.internal.progress.ProgressManager.runInUI(ProgressManager.java:996)
at org.eclipse.sirius.editor.properties.sections.description.representationdescription.AddFromRegistryButtonListener.widgetSelected(AddFromRegistryButtonListener.java:77)
at org.eclipse.swt.widgets.TypedListener.handleEvent(TypedListener.java:252)
at org.eclipse.swt.widgets.EventTable.sendEvent(EventTable.java:89)
at org.eclipse.swt.widgets.Display.sendEvent(Display.java:5895)
at org.eclipse.swt.widgets.Widget.sendEvent(Widget.java:1520)
at org.eclipse.swt.widgets.Display.runDeferredEvents(Display.java:5126)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:4581)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$5.run(PartRenderingEngine.java:1155)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:1046)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:155)
at org.eclipse.ui.internal.Workbench.lambda$3(Workbench.java:644)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:338)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:551)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:156)
at org.eclipse.ui.internal.ide.application.IDEApplication.start(IDEApplication.java:152)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:203)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:136)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:104)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:401)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:255)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:78)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:567)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:659)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:596)
at org.eclipse.equinox.launcher.Main.run(Main.java:1467)
at org.eclipse.equinox.launcher.Main.main(Main.java:1440)
Caused by: java.lang.NoClassDefFoundError: gurobi/GRBVar
at autoDesigner1.impl.AutoDesigner1PackageImpl.initializePackageContents(AutoDesigner1PackageImpl.java:1425)
at autoDesigner1.impl.AutoDesigner1PackageImpl.init(AutoDesigner1PackageImpl.java:202)
at autoDesigner1.AutoDesigner1Package.<clinit>(AutoDesigner1Package.java:58)
at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized0(Native Method)
at java.base/jdk.internal.misc.Unsafe.ensureClassInitialized(Unsafe.java:1155)
at java.base/jdk.internal.reflect.UnsafeFieldAccessorFactory.newFieldAccessor(UnsafeFieldAccessorFactory.java:42)
at java.base/jdk.internal.reflect.ReflectionFactory.newFieldAccessor(ReflectionFactory.java:186)
at java.base/java.lang.reflect.Field.acquireFieldAccessor(Field.java:1126)
at java.base/java.lang.reflect.Field.getFieldAccessor(Field.java:1107)
at java.base/java.lang.reflect.Field.get(Field.java:419)
at org.eclipse.emf.ecore.plugin.RegistryReader$EPackageDescriptor.getEPackage(RegistryReader.java:304)
at org.eclipse.sirius.editor.properties.sections.description.representationdescription.DescriptionMetamodelsUpdater.getEPackagesFromNsURI(DescriptionMetamodelsUpdater.java:282)
at org.eclipse.sirius.editor.properties.sections.description.representationdescription.AddFromRegistryButtonListener$1.run(AddFromRegistryButtonListener.java:83)
at org.eclipse.jface.operation.ModalContext.runInCurrentThread(ModalContext.java:434)
... 38 more
Caused by: java.lang.ClassNotFoundException: gurobi.GRBVar cannot be found by AutoDesigner1_0.1.0.qualifier
at org.eclipse.osgi.internal.loader.BundleLoader.generateException(BundleLoader.java:529)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass0(BundleLoader.java:524)
at org.eclipse.osgi.internal.loader.BundleLoader.findClass(BundleLoader.java:416)
at org.eclipse.osgi.internal.loader.ModuleClassLoader.loadClass(ModuleClassLoader.java:168)
at java.base/java.lang.ClassLoader.loadClass(ClassLoader.java:519)
... 52 more
I think that the referenced gurobi library is the problem. However I already added the jar under classpath and set the environment variables.
The library is also loaded correctly.
I dont know how to solve the problem and would be grateful if someone could help me.

Related

while run the java file i am getting an error java.lang.UnsatisfiedLinkError: JNIExample.getVersion([B[I)I

D:\JNIExample\JNIExample\JNIExample>java JNIExample
Exception in thread "main" java.lang.UnsatisfiedLinkError: JNIExample.getVersion([B[I)I
at JNIExample.getVersion(Native Method)
at JNIExample.main(JNIExample.java:15)
Are you loading the dll/so library with the native code?
Typically done in the class needing it, like this:
static {
try {
System.loadLibrary("jniexample");
} catch (UnsatisfiedLinkError e) {
System.err.println("Native code library failed to load.\n" + e);
System.exit(1);
}
}
Edit: accidentally used the old load call in the first answer. you probably should use loadLibrary(). See this article for a comparison

unknown JAXB implementation incase of SOAP FAULT [closed]

Closed. This question needs debugging details. It is not currently accepting answers.
Edit the question to include desired behavior, a specific problem or error, and the shortest code necessary to reproduce the problem. This will help others answer the question.
Closed 3 years ago.
Improve this question
I am running soap webservice and in case of error I am getting below exception:
[Loaded com.sun.xml.ws.message.jaxb.AttachmentMarshallerImpl from file:/C:/Oracle/Middleware/Oracle_Home/oracle_common/modules/com.sun.xml.ws.jaxws-rt_2.2.jar]
Feb 18, 2017 2:06:47 AM com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit handle
SEVERE: Unknown JAXBContext implementation: class com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl
com.sun.xml.ws.spi.db.DatabindingException: Unknown JAXBContext implementation: class com.sun.xml.internal.bind.v2.runtime.JAXBContextImpl
at com.sun.xml.ws.spi.db.BindingContextFactory.getJAXBFactory(BindingContextFactory.java:207)
at com.sun.xml.ws.spi.db.BindingContextFactory.create(BindingContextFactory.java:149)
at com.sun.xml.ws.message.jaxb.JAXBMessage.create(JAXBMessage.java:167)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createSOAP11Fault(SOAPFaultBuilder.java:439)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createSOAPFaultMessage(SOAPFaultBuilder.java:216)
at com.sun.xml.ws.fault.SOAPFaultBuilder.createSOAPFaultMessage(SOAPFaultBuilder.java:204)
at com.sun.xml.ws.server.WSEndpointImpl$2.process(WSEndpointImpl.java:425)
at com.sun.xml.ws.transport.http.HttpAdapter$HttpToolkit.handle(HttpAdapter.java:868)
at com.sun.xml.ws.transport.http.HttpAdapter.handle(HttpAdapter.java:422)
at com.sun.xml.ws.transport.http.servlet.ServletAdapter.invokeAsync(ServletAdapter.java:225)
at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doGet(WSServletDelegate.java:161)
at com.sun.xml.ws.transport.http.servlet.WSServletDelegate.doPost(WSServletDelegate.java:197)
at com.sun.xml.ws.transport.http.servlet.WSServlet.doPost(WSServlet.java:81)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3432)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3402)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2285)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2201)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1572)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255)
at weblogic.work.ExecuteRequestAdapter.execute(ExecuteRequestAdapter.java:21)
at weblogic.kernel.ExecuteThread.execute(ExecuteThread.java:147)
at weblogic.kernel.ExecuteThread.run(ExecuteThread.java:119)
I tried looking for answer on various blogs but could not find the answer. then i de-compiled jars and found out below which helped in resolving this error . Error was because of classes with different version in JDK and weblogic.
-Djavax.xml.bind.JAXBContext=com.sun.xml.bind.v2.ContextFactory

Weka Linear regression ClassNotFoundException

String filePath = new File("").getAbsolutePath();
DataSource source = new DataSource(filePath + "\\src\\data\\data.arff");
Instances dataset = source.getDataSet();
// set class
dataset.setClassIndex(0);
// build model
**LinearRegression lr = new LinearRegression();**
lr.buildClassifier(dataset);
System.out.println(lr);
Right after LinearRegression instantiation I get this error:
Exception in thread "main" java.lang.NoClassDefFoundError:
no/uib/cipr/matrix/Matrix at
weka_prediction.Main_LinearRegression.main(Main_LinearRegression.java:22)
Caused by: java.lang.ClassNotFoundException: no.uib.cipr.matrix.Matrix
at java.net.URLClassLoader.findClass(Unknown Source) at
java.lang.ClassLoader.loadClass(Unknown Source) at
sun.misc.Launcher$AppClassLoader.loadClass(Unknown Source) at
java.lang.ClassLoader.loadClass(Unknown Source) ... 1 more
I am using weka 3.8.
any ideas? thanks in advance
There is a problem with loading weka.core. You just need to go to the weka repository and download and add the following jars:
mtj.jar
arpack_combined_all.jar
core.jar
See more details here:
Solved!
instead of 3.8, I am now using 3.6 from here:
http://grepcode.com/project/repo1.maven.org/maven2/nz.ac.waikato.cms.weka/weka-stable/
For anyone who are trying to run Weka as a tool. When you downloaded the weka archive, unzip it, you will find the weka.jar. And then just do what #Kirill Karmazin said in the comment in here. unzip the 3 jars arpack_combined.jar, core.jar and mtj.jar and put them alongside with weka.jar.
Then run java -cp * weka.gui.GUIChooser to run the Weka GUI.
Rather than extracting the MTJ and arpack libraries, simply use Weka's package manager to sort this out for you. It will initialize package management and, if necessary, add these internal jars to its classpath automatically.
You do this by calling the loadPackages method of the weka.core.WekaPackageManager class.
Here is an example:
import weka.core.converters.ConverterUtils.DataSource;
import weka.core.Instances;
import weka.core.WekaPackageManager;
import weka.classifiers.functions.LinearRegression;
public class LR {
public static void main(String[] args) throws Exception {
// load packages and MTJ/arpack libraries (if necessary)
WekaPackageManager.loadPackages(false);
// load dataset
DataSource source = new DataSource(args[0]);
Instances dataset = source.getDataSet();
// set class
dataset.setClassIndex(dataset.numAttributes() - 1);
// build model
LinearRegression lr = new LinearRegression();
lr.buildClassifier(dataset);
System.out.println(lr);
}
}

java.lang.NoClassDefFoundError: javax/media/opengl/GLException at processing.opengl.PGraphicsOpenGL

I am writing a program in Processing on Raspberrypi(Raspbian), to import a 3D STL image file. It is working perfectly on Microsoft (windows7) & Linux(Ubuntu) platform but I am struggling to run same program on Raspberrypi (Raspbian) platform.
I am getting below Error at size(600,600,P3D) when I run this program on Raspberrypi...
Coding
import toxi.geom.*;
import toxi.geom.mesh.*;
import toxi.processing.*;
TriangleMesh mesh;
ToxiclibsSupport gfx;
void setup() {
size(600,600,P3D);
mesh=(TriangleMesh)new STLReader().loadBinary(sketchPath("check.stl"),STLReader.TRIANGLEMESH);
gfx=new ToxiclibsSupport(this);
}
void draw() {
background(51);
lights();
translate(width/2,height/2,0);
rotateX(mouseY*0.01);
rotateY(mouseX*0.01);
gfx.origin(new Vec3D(),200);
noStroke();
gfx.mesh(mesh,false,10);
}
Error
java.lang.NoClassDefFoundError: javax/media/opengl/GLException
at processing.opengl.PGraphicsOpenGL.createPGL(PGraphicsOpenGL.java:1744)
at processing.opengl.PGraphicsOpenGL.<init>(PGraphicsOpenGL.java:518)
at processing.opengl.PGraphics3D.<init>(PGraphics3D.java:37)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:57)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.lang.reflect.Constructor.newInstance(Constructor.java:526)
at processing.core.PApplet.makeGraphics(PApplet.java:1919)
at processing.core.PApplet.size(PApplet.java:1771)
at processing.core.PApplet.size(PApplet.java:1742)
at project5.setup(project5.java:27)
at processing.core.PApplet.handleDraw(PApplet.java:2361)
at processing.core.PGraphicsJava2D.requestDraw(PGraphicsJava2D.java:240)
at processing.core.PApplet.run(PApplet.java:2256)
at java.lang.Thread.run(Thread.java:724)
Caused by: java.lang.ClassNotFoundException: javax.media.opengl.GLException
at java.net.URLClassLoader$1.run(URLClassLoader.java:366)
at java.net.URLClassLoader$1.run(URLClassLoader.java:355)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:354)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:308)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
... 15 more
The issue with Processing is that currently there is no 3D implementation because Raspberry PI needs an OPENGL_ES renderer.
Currently you can only render in 2D (e.g. size(200,200,JAVA2D);).
There is actually an OPENGL_ES renderer in Processing but it's for the Android mode and it has dependencies on the android SDK. As far as I know, there isn't any Processing OPENGL_ES renderer you can use on Raspberry PI at the moment(if someone knows of one, please let me know). In theory how ever, it should be possible to strip out the android dependencies from the Android PGraphics class, but feels like a risky move (especially if you have a tight deadline).To get started you may want to look EGL in java running on Rasperry Pi.
I would recommend using OpenFrameworks instead in this case, if displaying an STL file is all you need. I've modified an existing STL addon for OpenFramworks and tested it: the performance is great on the Raspberry PI. Although it's c++, the project is inspired by Processing and a lot of the functions will sound very familiar.
Once you setup OpenFramworks you can download ofxSTLModel and compile the example(I've updated it to run on Raspberry PI). Press any key to toggle wireframe view.
Update
Now there is an experimental Raspian image including Processing 3 with 3D support. Check out this thread

RESTEasy java.lang.LinkageError: LinkageError while defining class: org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher

I am trying to implement RESTEasy in my project, which is giving
java.lang.LinkageError: LinkageError while defining
class:org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
I am using websphere 6.1 and RESTEasy 2.1.0.GA
The detail error is as follows:
`Caused by: java.lang.LinkageError: LinkageError while defining class: org.jboss.resteasy.plugins.server.servlet.HttpServletDispatcher
Could not be defined due to: (org/jboss/resteasy/plugins/server/servlet/HttpServletDispatcher) bad major version at offset=6
This is often caused by having a class defined at multiple
locations within the classloader hierarchy. Other potential causes
include compiling against an older or newer version of the class
that has an incompatible method signature.
Dumping the current context classloader hierarchy:
==> indicates defining classloader
==>[0]
com.ibm.ws.classloader.CompoundClassLoader#46204620
Local ClassPath:
Delegation Mode: PARENT_FIRST
[1]
com.ibm.ws.classloader.CompoundClassLoader#20ac20ac
Local ClassPath:
Delegation Mode: PARENT_FIRST
[2] com.ibm.ws.classloader.ProtectionClassLoader#49de49de
[3] com.ibm.ws.bootstrap.ExtClassLoader#7b127b12
[4] org.eclipse.osgi.internal.baseadaptor.DefaultClassLoader#2db22db2
[5] sun.misc.Launcher$AppClassLoader#62e662e6
[6] sun.misc.Launcher$ExtClassLoader#7fee7fee
---Original exception---
java.lang.UnsupportedClassVersionError: (org/jboss/resteasy/plugins/server/servlet/HttpServletDispatcher) bad major version at offset=6
at java.lang.ClassLoader.defineClassImpl(Native Method)
at java.lang.ClassLoader.defineClass(ClassLoader.java:258)
at java.security.SecureClassLoader.defineClass(SecureClassLoader.java:151)
at com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:555)
at com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.java:506)
at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:380)
at java.lang.ClassLoader.loadClass(ClassLoader.java:597)
at java.beans.Beans.instantiate(Beans.java:202)
at java.beans.Beans.instantiate(Beans.java:63)
at com.ibm.ws.webcontainer.servlet.ServletWrapper$1.run(ServletWrapper.java:1334)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.loadServlet(ServletWrapper.java:1329)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.loadServlet(ServletWrapper.java:388)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:410)
at com.ibm.ws.wswebcontainer.servlet.ServletWrapper.handleRequest(ServletWrapper.java:478)
at com.ibm.ws.webcontainer.webapp.WebApp.handleRequest(WebApp.java:3440)
at com.ibm.ws.webcontainer.webapp.WebGroup.handleRequest(WebGroup.java:267)
at com.ibm.ws.webcontainer.WebContainer.handleRequest(WebContainer.java:815)
at com.ibm.ws.wswebcontainer.WebContainer.handleRequest(WebContainer.java:1461)
at com.ibm.ws.webcontainer.channel.WCChannelLink.ready(WCChannelLink.java:119)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleDiscrimination(HttpInboundLink.java:458)
at com.ibm.ws.http.channel.inbound.impl.HttpInboundLink.handleNewInformation(HttpInboundLink.java:387)
at com.ibm.ws.http.channel.inbound.impl.HttpICLReadCallback.complete(HttpICLReadCallback.java:102)
at com.ibm.ws.tcp.channel.impl.AioReadCompletionListener.futureCompleted(AioReadCompletionListener.java:165)
at com.ibm.io.async.AbstractAsyncFuture.invokeCallback(AbstractAsyncFuture.java:217)
at com.ibm.io.async.AsyncChannelFuture.fireCompletionActions(AsyncChannelFuture.java:161)
at com.ibm.io.async.AsyncFuture.completed(AsyncFuture.java:136)
at com.ibm.io.async.ResultHandler.complete(ResultHandler.java:195)
at com.ibm.io.async.ResultHandler.runEventProcessingLoop(ResultHandler.java:743)
at com.ibm.io.async.ResultHandler$2.run(ResultHandler.java:873)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1473)
--- end Original exception----
at com.ibm.ws.classloader.CompoundClassLoader._defineClass(CompoundClassLoader.java:602)
at com.ibm.ws.classloader.CompoundClassLoader.findClass(CompoundClassLoader.java:506)
at com.ibm.ws.classloader.CompoundClassLoader.loadClass(CompoundClassLoader.java:380)
at java.lang.ClassLoader.loadClass(ClassLoader.java:597)
at java.beans.Beans.instantiate(Beans.java:202)
at java.beans.Beans.instantiate(Beans.java:63)
at com.ibm.ws.webcontainer.servlet.ServletWrapper$1.run(ServletWrapper.java:1334)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.loadServlet(ServletWrapper.java:1329)
... 19 more
`
The library you are attempting to use was compiled using Java 1.6. WebSphere Application Server 6.1 supports only 1.5.