如何使用starUml的逆向工程将java代码转换成图形呢?

问题描述

按照这篇文章最后的步骤进行转换:http://wenku.baidu.com/view/df24e5020740be1e650e9a23.html我从公司项目里随便拿了个工具类出来进行逆向转换,结果报如下错:[时间]Syntaxerror(文件名)Description:UnrecoverableParseErrorLocation:35Line19Column代码对应地址是publicstatic【这里】List<String>getTableSuffix(DatestartDate,DateendDate){我以为是不识别List类,于是我把List<String>随便改成了String又转换了一次,报错还是如上,只是定位在另外一个地方如下:List<String>dateList=newAr【这里】rayList<String>();我感觉很奇怪,第一次报错还能理解成不识别List,第二个错就难理解了。请问应该“逆向工程”功能如何使用呢?

解决方案

解决方案二:
有可能是编码的问题。你可以参考下C#的。So,IwasreverseengineeringsomeC#codethatIhaddevelopedinVisualStudiotocreatesomeUMLclassdiagrams.RunningStarUMLiranintothefollowingerror:UnrecoverableParseError1Line0Column

AfterpokingarounditseemsStarUMLdoesnotliketheUTF-8ByteOrderMark(BOM)thatVisualStudioaddstothebeginningofthefilebydefault.TheByteOrderMarkisaunicodecharacterplacedatthebeginningofaunicodetextfiletoindicatetheendiannessofthemulti-bytecharacters.ForUTF-8itisathreebytesequence0xEF,0xBB,0xBF.ThebyteordermarkforUTF-8isnotrequiredsinceendiannessisnotanissuewiththe8-bitencodingformat.However,forsomereasonMicrosoftthinksit’sagoodideatoputitthereanyway.ThismarkmustberemovedfromthefilebeforeStarUMLwillbeabletoparseit.Thereareafewwaystoremovethismark.VisualStudiowillremovetheBOMbygoingtoSaveAs…andselecting“SaveWithEncoding…”andselecting“UTF-8withoutsignature”.OnceitissavedwithouttheBOM,VisualStudiowillnotadditagain.Unfortunately,thereisnowaytomakethisdefaultforallfilesinVisualStudioanditmustbedonemanuallyeachtimeafileissavedforthefirsttime.IfyouhaveaccesstoaLinuxmachineorCygwininstalledyoucanbatchmodifyexistingfileswiththislittlescript:find.-name"*.cpp"-execvim-c"setnobomb"-cwq!{};Or,ifyoudon’thaveCygwinbutyoudohavevimyoucanusethisbatchscript.for%%fin(*.cpp)docallvim-c"setnobomb"-cwq!%%fNote,doingthisinabatchscript,itseemsIneedtohit[return]eachtimevimexitswhichisn’tthecasewiththeCygwinversion.ThisproblemofcourseisnotlimitedtoStarUMLasthebyteordermarkcancauseproblemsinmanyotherprogramsaswell.ItjustsohappenedthatIwasusingStarUMLwhenIdiscoveredthisissue.TherootcauseisMicrosoftaddingthisunnecessarymark.Thefixhoweverwouldbeforapplications,includingStarUML,tohandlethemarkproperlysincethestandarddoessayit“could”bethereeventhoughitisnotnecessaryorevenrecommended.
解决方案三:
啊,我没有看清你的问题,算了,直接无视吧
解决方案四:
泛型的原因吧
解决方案五:
由于staruml只支持jdk1.3的,所以当代码中有泛型或者注解forin等高级特性时,生成类图会失败
解决方案六:
引用4楼yuzhangkai的回复:

由于staruml只支持jdk1.3的,所以当代码中有泛型或者注解forin等高级特性时,生成类图会失败

就是这个原因了,功能不够强大。还是用eclipsemodelingframework比较合适

时间: 2024-09-08 06:24:07

如何使用starUml的逆向工程将java代码转换成图形呢?的相关文章

将这段java代码转换成c#代码

问题描述 publicvoiddoPost(HttpServletRequestrequest,HttpServletResponseresponse)throwsServletException,IOException{Stringtemp=request.getSession().getServletContext().getRealPath("/")+"temp";//临时目录System.out.println("temp="+temp)

格式 webp-谷歌的webp图片格式如何在windows下使用java转换成其他格式

问题描述 谷歌的webp图片格式如何在windows下使用java转换成其他格式 参考了http://blog.csdn.net/geeklei/article/details/41147479,可以在linux下成功执行,但是在windows下编译出dll和jar始终无法正确运行java.lang.IllegalArgumentException: image == null!无法识别这样的图片格式 解决方案 Java webp转jpg webp是最近google推出的新的图片格式 googl

把c++语言转换成c语言-如何把C++语言编写的代码转换成C语言

问题描述 如何把C++语言编写的代码转换成C语言 #include <stdlib.h>#include <stdio.h> #include <string.h>#include <conio.h>#include <iostream.h>#define N 50 //系统中学生的最大数量int n=3; //学生数量的初始值struct student { int sid; char name[10]; char num[14]; float

OpenRisc入门(2) 将C语言代码转换成verilog HDL或者VHDL

引言 如何将C语言代码转换成verilog HDL或者VHDL呢? 2.1 在线转换: http://c-to-verilog.com/online.html C-to-Verilog.com是海法(Haifa)大学高层次综合领域的一个学术研究而产生的一个网站. 这个网站所用的编译器是SystemRacer综合系统的一个修改版本.这个编译器的源码可用于研究目的,并且已经发给了很多编译器的研究组织. 此外还有一些文章可供参考,这些文章介绍了这个综合器的实现原理. 2.2 下载源码,然后安装,再使用

分享java打印简单图形的实现代码_java

我们平时都是使用的画图工具进行简单图形的绘制,今天我们使用java打印一些简单的图形 实现代码如下 package test; /** * * @author hanzel * @打印图形 * */ public class Array { public static void main(String[] args) { //打印长方形 int[] a = new int[10]; for(int i=0 ;i<a.length;i++){ for(int j=0;j<a.length;j++

在java中使用图形界面后怎么用按钮Button实现RS232串口的链接PC机上

问题描述 在java中使用图形界面后怎么用按钮Button实现RS232串口的链接PC机上 在java中使用图形界面后怎么用按钮Button实现RS232串口的链接PC机上,求大神啊 解决方案 你的按钮中就实现连接串口启动等代码 http://blog.csdn.net/kabini/article/details/1601324 解决方案二: 为button增加ActionListener,在其事件中实现你要的功能. new JButton().addActionListener(new Ac

java 打包成war里,能否不将引用的jar包打入,让它引用外部的jar

问题描述 java 打包成war里,能否不将引用的jar包打入,让它引用外部的jar java 打包成war里,能否不将引用的jar包打入,让它引用外部的jar 解决方案 你打成war,应该是需要放到tomcat或者weblogic这种容器里运行吧,如果是的话,可以不用打包进去,把包放到容器的lib目录下就行了,不过这样容易导致冲突和升级成本的上升(如果web容器里有多个应用的话)

软件指令-怎么把软件代码转换成机械动作

问题描述 怎么把软件代码转换成机械动作 各位大神,怎么把软件代码转换成机械动作?比如我的软件代码发出一个指令,能使开关闭合或者打开,需要用到什么模块以及什么技术,求各位大神指点一二!!!急急急 解决方案 啊,软件控制硬件多数都是看单片机上怎么识别缓冲区数据的,你可以查询一下单片机控制硬件方面的

有没有什么好的办法,把vb.net 的代码转换成c#.net代码

问题描述 手头上有套程序,是vb.net开发的.现在团队中,虽然vb也你能开发,但是还是c#比较熟练.有没有什么好的办法,把vb.net的代码转换成c#.net代码.整体或局部转换都可以. 解决方案 解决方案二:有网站和转换工具,但效果都不怎么好,你可以在网上找找尝试下...解决方案三:网上有转换器解决方案四: 解决方案五:微软有一套基于Roslyn的转换程序,googleRoslynVBC#Converter.网上的那种转换程序不经过语法分析,是不严肃的.无论使用什么方式转换,都需要建立单元测