Coder Social home page Coder Social logo

min-ho-kim / dexter Goto Github PK

View Code? Open in Web Editor NEW

This project forked from samsung/dexter

0.0 0.0 0.0 229.54 MB

Dexter is a static analysis platform to find and remove defects efficiently and immediately during the coding-time.

License: BSD 2-Clause "Simplified" License

Java 17.83% EmberScript 1.07% C++ 10.44% C 1.79% HTML 30.96% JavaScript 35.15% CSS 1.39% Ruby 0.01% Shell 0.12% Perl 0.05% Python 0.10% Batchfile 0.01% C# 1.08%

dexter's People

Contributors

alxpark avatar hmyun avatar marchpig avatar min-ho-kim avatar minjung-baek avatar minjung978 avatar yes-ho avatar

Watchers

 avatar

dexter's Issues

계정 생성 오류(CLI)

계정 생성이 정상적으로 되는가? [이하 create-user.bat(윈도우), create-user.sh(리눅스) 활용]

신규 계정 생성, 관리자/비관리자 계정 생성, 취소 시 정상 처리 여부

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>java -Xms256m -Xmx786m -XX:MaxPermSize=256m -jar dexter-executor.jar -c -u test.ho -p test.ho -h xxxxx -o 8190
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
Exception in thread "main" java.lang.NullPointerException
at java.io.File.(Unknown Source)
at com.samsung.sec.dexter.executor.cli.Main.createDexterConfigFile(Main.java:173)
at com.samsung.sec.dexter.executor.cli.Main.main(Main.java:66)

서버 없이 독립 실행: -s 옵션

Standalone. Run Dexter Analysis without DexterServer. you don't need log in(id & password) eg) -s

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>dexter2.bat -s

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>java -Xms256m -Xmx786m -XX:MaxPermSize=256m -jar dexter-executor.jar -s
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0

===== Starting Dexter Analysis =====

하고 아무것도 일어나지 않았습니다.

업데이트 체크 오류

org.eclipse.swt.SWTException: Failed to execute runnable (java.lang.NullPointerException)
at org.eclipse.swt.SWT.error(SWT.java:4361)
at org.eclipse.swt.SWT.error(SWT.java:4276)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:138)
at org.eclipse.swt.widgets.Display.runAsyncMessages(Display.java:4144)
at org.eclipse.swt.widgets.Display.readAndDispatch(Display.java:3761)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine$9.run(PartRenderingEngine.java:1053)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.e4.ui.internal.workbench.swt.PartRenderingEngine.run(PartRenderingEngine.java:942)
at org.eclipse.e4.ui.internal.workbench.E4Workbench.createAndRunUI(E4Workbench.java:86)
at org.eclipse.ui.internal.Workbench$5.run(Workbench.java:588)
at org.eclipse.core.databinding.observable.Realm.runWithDefault(Realm.java:332)
at org.eclipse.ui.internal.Workbench.createAndRunWorkbench(Workbench.java:543)
at org.eclipse.ui.PlatformUI.createAndRunWorkbench(PlatformUI.java:149)
at com.samsung.sec.dexter.daemon.DexterDaemonApplication.start(DexterDaemonApplication.java:48)
at org.eclipse.equinox.internal.app.EclipseAppHandle.run(EclipseAppHandle.java:196)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.runApplication(EclipseAppLauncher.java:110)
at org.eclipse.core.runtime.internal.adaptor.EclipseAppLauncher.start(EclipseAppLauncher.java:79)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:353)
at org.eclipse.core.runtime.adaptor.EclipseStarter.run(EclipseStarter.java:180)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at org.eclipse.equinox.launcher.Main.invokeFramework(Main.java:629)
at org.eclipse.equinox.launcher.Main.basicRun(Main.java:584)
at org.eclipse.equinox.launcher.Main.run(Main.java:1438)
at org.eclipse.equinox.launcher.Main.main(Main.java:1414)
Caused by: java.lang.NullPointerException
at com.samsung.sec.dexter.daemon.ApplicationWorkbenchWindowAdvisor.updateDexterPluginAndRestart(ApplicationWorkbenchWindowAdvisor.java:410)
at com.samsung.sec.dexter.daemon.ApplicationWorkbenchWindowAdvisor.checkAndUpdatePluginAndRestart(ApplicationWorkbenchWindowAdvisor.java:380)
at com.samsung.sec.dexter.daemon.ApplicationWorkbenchWindowAdvisor.checkerAndUpdateDexterPlugin(ApplicationWorkbenchWindowAdvisor.java:366)
at com.samsung.sec.dexter.daemon.ApplicationWorkbenchWindowAdvisor.access$2(ApplicationWorkbenchWindowAdvisor.java:351)
at com.samsung.sec.dexter.daemon.ApplicationWorkbenchWindowAdvisor$4$1.run(ApplicationWorkbenchWindowAdvisor.java:338)
at org.eclipse.swt.widgets.RunnableLock.run(RunnableLock.java:35)
at org.eclipse.swt.widgets.Synchronizer.runAsyncMessages(Synchronizer.java:135)
... 24 more

특정 체커만 Enable하여 실행: -e 옵션

Enable only specified checker(s), checkercode1;checkercode2:language:toolname;... eg) -e nullpointer;initializerlist:CPP:cppcheck

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>dexter2.bat -u yes.ho -p yes.ho -e nullpointer;initializerlist:CPP:cppcheck

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>java -Xms256m -Xmx786m -XX:MaxPermSize=256m -jar dexter-executor.jar -u yes.ho -p yes.ho -e nullpointer;initializerlist:CPP:cppcheck
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at com.samsung.sec.dexter.executor.cli.DexterCLIOption.setEnabledCheckers(DexterCLIOption.java:207)
at com.samsung.sec.dexter.executor.cli.DexterCLIOption.setFieldsByCommandLine(DexterCLIOption.java:132)
at com.samsung.sec.dexter.executor.cli.DexterCLIOption.createCliOptionFromArguments(DexterCLIOption.java:77)
at com.samsung.sec.dexter.executor.cli.DexterCLIOption.(DexterCLIOption.java:71)
at com.samsung.sec.dexter.executor.cli.Main.main(Main.java:65)

데몬 파일 분석 오류

-현상 : 개별파일에 대한 분석 X : source insight에서 코드 수정하여 저장하였으나 demon에서 분석결과 나타나지 않음.
-원인 : 분석 후 json파일이 result에 생성되지 않음.
-Dexter Daemon Home Path : D:\dev\dexter\20160831_dexter\daemon\eclipse\dexter-home
-수정한 파일 위치 : D:\dev\dexter\20160831_dexter\daemon\20160831test.c

!ENTRY dexter-daemon 4 4 2016-08-31 20:53:20.026
!MESSAGE there is no result file path : D:/dev/dexter/20160831_dexter/daemon/eclipse/dexter-home/result/daemon/dev/dexter/20160831_dexter/daemon/20160831test.c
!STACK 0
com.samsung.sec.dexter.core.exception.DexterRuntimeException: there is no result file path : D:/dev/dexter/20160831_dexter/daemon/eclipse/dexter-home/result/daemon/dev/dexter/20160831_dexter/daemon/20160831test.c
at com.samsung.sec.dexter.core.config.DexterConfigFile.setResultFileFullPath(DexterConfigFile.java:428)
at com.samsung.sec.dexter.core.config.EclipseDexterConfigFile.setFields(EclipseDexterConfigFile.java:39)
at com.samsung.sec.dexter.core.config.DexterConfigFile.loadFromFile(DexterConfigFile.java:76)
at com.samsung.sec.dexter.daemon.job.MonitorForDexterConfigFile.checkDexterConfigFileAndAnalyze(MonitorForDexterConfigFile.java:116)
at com.samsung.sec.dexter.daemon.job.MonitorForDexterConfigFile.run(MonitorForDexterConfigFile.java:95)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

!ENTRY dexter-daemon 4 4 2016-08-31 20:53:27.030
!MESSAGE there is no result file path : D:/dev/dexter/20160831_dexter/daemon/eclipse/dexter-home/result/daemon/dev/dexter/20160831_dexter/daemon/20160831test.c
!STACK 0
com.samsung.sec.dexter.core.exception.DexterRuntimeException: there is no result file path : D:/dev/dexter/20160831_dexter/daemon/eclipse/dexter-home/result/daemon/dev/dexter/20160831_dexter/daemon/20160831test.c
at com.samsung.sec.dexter.core.config.DexterConfigFile.setResultFileFullPath(DexterConfigFile.java:428)
at com.samsung.sec.dexter.core.config.EclipseDexterConfigFile.setFields(EclipseDexterConfigFile.java:39)
at com.samsung.sec.dexter.core.config.DexterConfigFile.loadFromFile(DexterConfigFile.java:76)
at com.samsung.sec.dexter.daemon.job.MonitorForDexterConfigFile.checkDexterConfigFileAndAnalyze(MonitorForDexterConfigFile.java:116)
at com.samsung.sec.dexter.daemon.job.MonitorForDexterConfigFile.run(MonitorForDexterConfigFile.java:95)
at org.eclipse.core.internal.jobs.Worker.run(Worker.java:55)

XML 형태의 결과 파일 생성: -X 옵션 (파일명 뒤에 타임스탬프 추가)

Create XML result file with timestamp - dexter-result_yyyyMMddhh:mm:ss.xml. eg) -X

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>dexter2.bat -u yes.ho -p yes.ho -X

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>java -Xms256m -Xmx786m -XX:MaxPermSize=256m -jar dexter-executor.jar -u yes.ho -p yes.ho -X
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0

===== Starting Dexter Analysis =====

  • Loaded cppcheck 0.10.3
  • Loaded findbugs 0.10.3
  • Loaded dexter-opensource 0.10.3
  • Loaded dexter-vd-cpp 0.10.3

== Defects Report ==
analyze synchronously...
Exception in thread "main" java.lang.NullPointerException
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213)
at com.google.common.io.Files$FileByteSink.(Files.java:195)
at com.google.common.io.Files$FileByteSink.(Files.java:189)
at com.google.common.io.Files.asByteSink(Files.java:186)
at com.google.common.io.Files.asCharSink(Files.java:232)
at com.google.common.io.Files.write(Files.java:508)
at com.google.common.io.Files.append(Files.java:492)
at com.samsung.sec.dexter.executor.cli.CLIResultFile.writeXml2ResultFilePrefix(CLIResultFile.java:53)
at com.samsung.sec.dexter.executor.cli.CLIAnalysisResultHandler.handleBeginnigOfResultFile(CLIAnalysisResultHandler.java:109)
at com.samsung.sec.dexter.executor.cli.CLIAnalysisResultHandler.handleAnalysisResult(CLIAnalysisResultHandler.java:64)
at com.samsung.sec.dexter.executor.DexterAnalyzerThread.run(DexterAnalyzerThread.java:102)
at com.samsung.sec.dexter.executor.DexterAnalyzer.runSync(DexterAnalyzer.java:79)
at com.samsung.sec.dexter.executor.cli.Main.analyzeSynchronously(Main.java:204)
at com.samsung.sec.dexter.executor.cli.Main.analyze(Main.java:129)
at com.samsung.sec.dexter.executor.cli.Main.main(Main.java:74

XML 형태의 결과 파일 생성: -x 옵션

Create XML result file - dexter-result.xml. eg) -x

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>dexter2.bat -u yes.ho -p yes.ho -x

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>java -Xms256m -Xmx786m -XX:MaxPermSize=256m -jar dexter-executor.jar -u yes.ho -p yes.ho -x
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0

===== Starting Dexter Analysis =====

  • Loaded cppcheck 0.10.3
  • Loaded findbugs 0.10.3
  • Loaded dexter-opensource 0.10.3
  • Loaded dexter-vd-cpp 0.10.3

== Defects Report ==
analyze synchronously...
Exception in thread "main" java.lang.NullPointerException
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213)
at com.google.common.io.Files$FileByteSink.(Files.java:195)
at com.google.common.io.Files$FileByteSink.(Files.java:189)
at com.google.common.io.Files.asByteSink(Files.java:186)
at com.google.common.io.Files.asCharSink(Files.java:232)
at com.google.common.io.Files.write(Files.java:508)
at com.google.common.io.Files.append(Files.java:492)
at com.samsung.sec.dexter.executor.cli.CLIResultFile.writeXmlResultFilePrefix(CLIResultFile.java:47)
at com.samsung.sec.dexter.executor.cli.CLIAnalysisResultHandler.handleBeginnigOfResultFile(CLIAnalysisResultHandler.java:105)
at com.samsung.sec.dexter.executor.cli.CLIAnalysisResultHandler.handleAnalysisResult(CLIAnalysisResultHandler.java:64)
at com.samsung.sec.dexter.executor.DexterAnalyzerThread.run(DexterAnalyzerThread.java:102)
at com.samsung.sec.dexter.executor.DexterAnalyzer.runSync(DexterAnalyzer.java:79)
at com.samsung.sec.dexter.executor.cli.Main.analyzeSynchronously(Main.java:204)
at com.samsung.sec.dexter.executor.cli.Main.analyze(Main.java:129)
at com.samsung.sec.dexter.executor.cli.Main.main(Main.java:74

Json 형태의 결과 파일 생성: -j 옵션

Create Json result file - dexter-result.json. eg) -j

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>dexter2.bat -u yes.ho -p yes.ho -j

D:\dev\dexter\20160811_dexter\cli\dexter-cli_0.10.3_64\bin>java -Xms256m -Xmx786m -XX:MaxPermSize=256m -jar dexter-executor.jar -u yes.ho -p yes.ho -j
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=256m; support was removed in 8.0

===== Starting Dexter Analysis =====

  • Loaded cppcheck 0.10.3
  • Loaded findbugs 0.10.3
  • Loaded dexter-opensource 0.10.3
  • Loaded dexter-vd-cpp 0.10.3

== Defects Report ==
analyze synchronously...
Exception in thread "main" java.lang.NullPointerException
at com.google.common.base.Preconditions.checkNotNull(Preconditions.java:213)
at com.google.common.io.Files$FileByteSink.(Files.java:195)
at com.google.common.io.Files$FileByteSink.(Files.java:189)
at com.google.common.io.Files.asByteSink(Files.java:186)
at com.google.common.io.Files.asCharSink(Files.java:232)
at com.google.common.io.Files.write(Files.java:508)
at com.google.common.io.Files.append(Files.java:492)
at com.samsung.sec.dexter.executor.cli.CLIResultFile.writeJsonResultFilePrefix(CLIResultFile.java:42)
at com.samsung.sec.dexter.executor.cli.CLIAnalysisResultHandler.handleBeginnigOfResultFile(CLIAnalysisResultHandler.java:101)
at com.samsung.sec.dexter.executor.cli.CLIAnalysisResultHandler.handleAnalysisResult(CLIAnalysisResultHandler.java:64)
at com.samsung.sec.dexter.executor.DexterAnalyzerThread.run(DexterAnalyzerThread.java:102)
at com.samsung.sec.dexter.executor.DexterAnalyzer.runSync(DexterAnalyzer.java:79)
at com.samsung.sec.dexter.executor.cli.Main.analyzeSynchronously(Main.java:204)
at com.samsung.sec.dexter.executor.cli.Main.analyze(Main.java:129)
at com.samsung.sec.dexter.executor.cli.Main.main(Main.java:74)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.