Update Franca/doxygen integration

381 views
Skip to first unread message

Klaus Birken

unread,
Apr 5, 2017, 6:54:23 AM4/5/17
to Franca
Hi all,

glad to announce that an update for the Franca/doxygen integration is available. Some of you beta-tested the previous version, thanks for the feedback.

The basic idea of this tool integration is that Franca files (extension fidl) are converted to OMG IDL files (extension idl); afterwards the OMG IDL parser of doxygen is used for creating the documentation. More information is available here [1].

The new features of this update include:
- Franca structured comments are handled properly now
  - comments are now also supported for enumerators, struct fields, etc.
  - @description content is transformed to normal comments in doxygen, other Franca tags (e.g. @author, @deprecated) are transformed to proper doxygen counterparts
- doxygen pages describing interfaces and type collections now have a remark connecting to the original Franca model element
- version numbers (major/minor) in Franca are transformed properly
- attributes are generated properly (incl. the readonly flag)

The update (0.7.0, though still beta) is available here [2]. Looking forward to your feedback.

Regards,
Klaus


snehal...@gmail.com

unread,
Jun 7, 2021, 10:09:08 AM6/7/21
to Franca
Hi Klaus,

I am new to franca IDL. Trying to generate document from franca IDL.
I am unable to find the instructions to generate document.  
Please do let me know how to do or where can I get the information on this.
Appreciate your help.

Regards,
Mangala

Klaus Birken

unread,
Jun 9, 2021, 10:56:16 AM6/9/21
to Franca
Hi Mangala,

the instructions are on the slides from 2015. Here is a more recent version from 2017 :-)


First you should visit URL [2] from the initial post in this thread and download the two files Franca2IDLFilter.sh and Franca2IDL.jar. You could build the latter from Franca sources but it is not important right now. Next you visit the presentation, on this slide there are two code snippets. The second one is just the file Franca2IDLFilter.sh you downloaded before, just ignore it. The first one is the configuration additions you have to put in your project's doxygen_conf file (which is usually in the root folder of the directory where the .fidl files are stored.

When you then run doxygen, it will automatically convert .fidl-files into .idl files. And doxygen knows natively how to handle .idl files and convert them into documentation.

Hope it will work for you. Regards,
Klaus

Klaus Birken

unread,
Jun 9, 2021, 10:57:59 AM6/9/21
to Franca
The doxygen configuration file is actually doxygen_config (without extension).

Klaus Birken

unread,
Jun 11, 2021, 7:20:54 AM6/11/21
to Franca
Hi all,

here are short instructions on how to build the Franca2IDL.jar from Franca sources:

- clone the Franca repo from github and open in Eclipse (see the informations in the repo's wiki pages)
- locate the project org.franca.connectors.idl
- find the file Franca2IdlStandalone.java and open its context menu
- run it once using Run As / Java Application in order to create a launch configuration

Bildschirmfoto 2021-06-11 um 13.13.50.png

- choose Export...
- in the Export-dialog, choose Java / Runnable Jar file

Bildschirmfoto 2021-06-11 um 13.12.18.png

- in the Runnable Jar Export dialog, pick the launch configuration that was created before
- enter a folder as export destination
- press finish

This should create the jar file from Franca sources.

Have fun, best regards,
Klaus

rakesh reddy

unread,
Feb 14, 2022, 3:55:22 PM2/14/22
to Franca
Hello Klaus,

I am getting below error when I am trying to build the plugin

Below is the error that I am getting in Eclipse,

Exception in thread "main" java.lang.Error: Unresolved compilation problem:
        The method createInjectorAndDoEMFRegistration() of type FrancaIDLStandaloneSetup must override or implement a supertype method

        at org.franca.core.dsl.FrancaIDLStandaloneSetup.createInjectorAndDoEMFRegistration(FrancaIDLStandaloneSetup.java:16)
        at org.franca.core.dsl.cli.AbstractCommandLineTool.execute(AbstractCommandLineTool.java:48)
        at org.franca.connectors.idl.Franca2IdlStandalone.main(Franca2IdlStandalone.java:43)


Rakesh

Klaus Birken

unread,
Feb 20, 2022, 1:24:47 PM2/20/22
to Franca
Hi Rakesh,


This might provide some additional information which helps you with the build.

Best regards,
Klaus

eugene d

unread,
Feb 22, 2022, 6:53:29 PM2/22/22
to Franca
Hi Klaus

I've managed to follow the steps from
https://github.com/franca/franca/wiki/Franca-Install-Sources-For-Dev ,
namely: cloned franca, added required plugins to Eclipse (xtext, xpect etc), imported Franca project into Eclipse,
built Franca from org.franca.parent/pom.xml, with Run As,
can start Eclipse runtime instance,
but when I try to run Franca2IdlStandalone as java application I get a message that Selection does not contain a main type, see the screenshot attached
I’m running it on Linux I had to do a few corrections along the way, namely removing arguments jvm command line options -XstartOnFirstThread and -Xdock:icon=../Resources/Eclipse.icns
And also enabling swt plugin according to
https://www.eclipse.org/forums/index.php/t/488516/
I wonder what might be missing in my project setup and why the main type is not seen.
Any help would be appreciated

Thanks
Eugene

Franca2IDLnomain.png

eugene d

unread,
Feb 23, 2022, 6:35:11 PM2/23/22
to Franca
Cloned a new repo , reimported the Franca projects again (now all plugins got imported as separate projects)  , built (in Eclipse maven build as suggested on Franca Readme referred above) , and tried running the class Franca2IDLStandalone but still getting an error about main class not being resolved
"Error: Could not find or load main class org.franca.connectors.idl.Franca2IdlStandalone" (see attached)
To me it looks likely because the base class is not resolved in the project (highlighted with red)
I tried to add org.franca.core.dsl as a dependency project, still didn't help. Also tried a few experiments with Run configuration (adding the jar or project depemdency), no avail
It is quite frustrating why the main class does not get resolved and more  details on the reason cannot be seen

Franca2IDLnomain23.02.png
Reply all
Reply to author
Forward
0 new messages