-
Notifications
You must be signed in to change notification settings - Fork 2
Description
I followed the example and obtain an error when the channel is created. However, the error does not reoccur if I create new channels (unless I restart Matlab) and I am able to communicate with the EPICS server using the channel get/set commands.
I am running EPICS 3.16 on ubuntu inside virtual box with a bridged network adapter.
Matlab version is:
MATLAB Version: 9.2.0.538062 (R2017a)
MATLAB License Number: 916029
Operating System: Microsoft Windows 10 Enterprise Version 10.0 (Build 14393)
Java Version: Java 1.7.0_60-b19 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
Java version in Matalab:
Java 1.7.0_60-b19 with Oracle Corporation Java HotSpot(TM) 64-Bit Server VM mixed mode
Code I used:
javaaddpath('ca_matlab.jar');
P = java.util.Properties();
P.setProperty('EPICS_CA_ADDR_LIST', '192.168.0.11');
C = ch.psi.jcae.Context(P);
D = ch.psi.jcae.ChannelDescriptor('string', 'TEST_IOC:MY_STRING');
CH = ch.psi.jcae.Channels.create(C, D);
Error I got:
Failed to exec 'C:\Program Files\MATLAB\R2017a\sys\java\jre\win64\jre\bin\java', trying to start native repeater...
Jul 30, 2017 5:32:15 AM com.cosylab.epics.caj.CARepeater$1 runSEVERE: Failed to exec 'C:\Program Files\MATLAB\R2017a\sys\java\jre\win64\jre\bin\java', trying to start native repeater...
java.io.IOException: Cannot run program "C:\Program Files\MATLAB\R2017a\sys\java\jre\win64\jre\bin\java": CreateProcess error=206, The filename or extension is too long
at java.lang.ProcessBuilder.start(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at java.lang.Runtime.exec(Unknown Source)
at com.cosylab.epics.caj.CARepeater$1.run(CARepeater.java:629)
at java.security.AccessController.doPrivileged(Native Method)
at com.cosylab.epics.caj.CARepeater.startRepeater(CARepeater.java:647)
at com.cosylab.epics.caj.CAJContext.internalInitialize(CAJContext.java:673)
at com.cosylab.epics.caj.CAJContext.initialize(CAJContext.java:661)
at com.cosylab.epics.caj.CAJContext.checkState(CAJContext.java:644)
at com.cosylab.epics.caj.CAJContext.createChannel(CAJContext.java:908)
at gov.aps.jca.Context.createChannel(Context.java:143)
at ch.psi.jcae.impl.JCAChannelFactory.createChannel(JCAChannelFactory.java:80)
at ch.psi.jcae.impl.DefaultChannelService.createChannel(DefaultChannelService.java:119)
at ch.psi.jcae.Channels.create(Channels.java:47)
Caused by: java.io.IOException: CreateProcess error=206, The filename or extension is too long
at java.lang.ProcessImpl.create(Native Method)
at java.lang.ProcessImpl.(Unknown Source)
at java.lang.ProcessImpl.start(Unknown Source)
... 14 more
Jul 30, 2017 5:32:16 AM com.cosylab.epics.caj.impl.BroadcastTransport send
SEVERE:
java.net.BindException: Cannot assign requested address: no further information
at sun.nio.ch.DatagramChannelImpl.send0(Native Method)
at sun.nio.ch.DatagramChannelImpl.sendFromNativeBuffer(Unknown Source)
at sun.nio.ch.DatagramChannelImpl.send(Unknown Source)
at sun.nio.ch.DatagramChannelImpl.send(Unknown Source)
at com.cosylab.epics.caj.impl.BroadcastTransport.send(BroadcastTransport.java:238)
at com.cosylab.epics.caj.impl.ChannelSearchManager.flushSendBuffer(ChannelSearchManager.java:556)
at com.cosylab.epics.caj.impl.ChannelSearchManager.access$600(ChannelSearchManager.java:31)
at com.cosylab.epics.caj.impl.ChannelSearchManager$SearchTimer.timeout(ChannelSearchManager.java:335)
at com.cosylab.epics.caj.util.Timer$RunLoop.run(Timer.java:276)
at java.lang.Thread.run(Unknown Source)