Bnd 3.4 Macro expansion error

25 views
Skip to first unread message

Dave Smith

unread,
Aug 1, 2017, 12:47:56 PM8/1/17
to bndtools-users
I have just updated to bndtools 3.4 and the following macro worked before but I am now getting this error

-runvm: ${if;${matches;${server};.*?(candata|localhost).*?} ; "-Dcandata.url=https://${server}/osgi -Dcandata.username=${user} -Dcandata.password=${pass} "}


Status ERROR: bndtools.core code=0 Expected a delimeter, like comma or semicolon, after a quoted string but found '}': <<-runvm: ${if;${matches;${server};.*?(candata|localhost).*?} ; "-Dcandata.url=https://${server}/osgi -Dcandata.username=${user} -Dcandata.password=${pass} "} >> null


Peter Kriens

unread,
Aug 2, 2017, 3:52:01 AM8/2/17
to bndtool...@googlegroups.com
This error comes from the properties parser. I tried the -runvm property in my own Eclipse and it seems to be ok. So there should be some difference. Could you send the exact file? Or at least a few lines before/after setting the -runvm?

Kind regards,

Peter Kriens



--
You received this message because you are subscribed to the Google Groups "bndtools-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to bndtools-user...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Dave Smith

unread,
Aug 2, 2017, 8:58:46 AM8/2/17
to bndtools-users
Try this

server: localhost:8443
user: testuser
pass: test



-runvm: ${if;${matches;${server};.*?(candata|localhost).*?} ; "-Dcandata.url=https://${server}/osgi -Dcandata.username=${user} -Dcandata.password=${pass} "}



Peter Kriens

unread,
Aug 3, 2017, 5:43:43 AM8/3/17
to bndtool...@googlegroups.com
Ok, it is weird. I see it in Gradle but not in the IDE. And bnd command line is happy as well. 

Anyway, an easy fix is to remove the double quotes. As long as there is no ‘;’ in the arguments you’re ok. 

And please file a bug.

Kind regards,

Peter Kriens
Reply all
Reply to author
Forward
0 new messages