https://visualstudiogallery.msdn.microsoft.com/bc561769-36ff-4a40-9504-e266e8706f93

Bugs and Feature Requests: Issue Tracker

This extension provides basic features for the Java programming language. Current editing features include:

  • Syntax highlighting and brace matching
  • Outlining support for quickly collapsing classes and functions
  • Dropdown bars listing classes, enums, interfaces, fields, and methods within the current document

The latest version of this extension also includes an experimental project system and debugger for Java code. More information about these features is included below.

This extension is not meant to replace a full IDE, but has certainly helped when I wanted to quickly reference a Java source file while working within Visual Studio.

Debugger Support

Current features of the debugger include:

  • Support for multiple JVMs

    • Support for the 32- and 64-bit releases of the standard JDK 6 and 7 (HotSpot VM)
    • Support for the 32- and 64-bit releases of JRockit R28.x
  • Full support for “Java Runtime Environment” exceptions in the Debug → Exceptions dialog
    • Standard packages and exceptions are shown in the Java Runtime Environment category
    • Users can add their own exceptions by name
    • Users may select which exceptions the debugger should break on at the time they are thrown
    • Unhandled exceptions automatically trigger a breakpoint
    • When an exception is thrown, a message is printed to the output window (similar to the way it’s handled in C# debugging)
  • Standard (unconditional) breakpoints
  • Stepping in the editor
    • Step Into/Over/Out
    • The Step Over command steps over a statement – with proper support for multiple statements on a single line
  • Disassembly window
    • Shows JVM bytecode interleaved with the original source code
    • The Step Over command steps by bytecode instruction instead of by statement
  • Support for the Locals, Autos, and Watch windows
  • Support for the Immediate window
  • Support for pinnable data tips
  • Support for the Threads window
  • Support for user-friendly representation of collections (lists, maps, arrays, etc.)

Stepping over statements

In our opinion, this is hands-down the coolest feature of our debugger.

We’ve been looking, but so far it seems that no current Java IDE can properly distinguish between multiple statements on a single line. We aim to change that.The image below shows a series of steps in the debugger (the Step Over command was executed exactly one time between each image). As you can see, our debugger follows the logical stepping sequence from the initializer to the condition of the for statement.

Here is an animated image showing a more complete example.

Intuitive display of collections without hiding data

The debugger provides special handling for arrays and classes implementing CollectionMap, and a few other interfaces. To ensure that the debugger doesn’t restrict access to information you need, a special Raw Values property is provided which the user can expand to see the object’s true internal structure. Direct access to the Static Members of classes is provided as well (standard for all classes).

Bytecode disassembly

Curious about what your code is compiling to? The disassembly window fully supports Java bytecode while debugging your program.

Exceptions

The Java debugger extends the Debug → Exceptions window with support for Java Runtime Environment exceptions.

Handling behavior for exceptions may be configured by package or by individual exception type. The following example shows a user configuration requesting the debugger stop immediately when an IllegalArgumentException is thrown.

When an exception is thrown, the debugger first checks to see if the user has requested the debugger stop when the exception is thrown. In this case, we configured the debugger to stop when an IllegalArgumentException is thrown, whether or not a catch statement is available to handle the exception.

If an exception is thrown and no exception handler is available to handle the exception, the debugger stops immediately at the point the unhandled exception is thrown. The user does not need to specially configure the debugger to respond to this error case.

Debugger tool windows

The following image shows the contents of many (but not all) of the currently supported debugger windows in Visual Studio.

Version History

1.2.0 (April 25, 2015)

This should be considered a preview release of the new features of this extension.

1.1.0 (March 16, 2014)

This should be considered an early preview release of the new features of this extension.

 
  • Disable the Empty Project template since it isn't working properly
  • Stability improvements

1.0.8 (February 20, 2014)

This should be considered an early preview release of the new features of this extension.

  • Add Java project system, with support for building and debugging Java code
  • Support Visual Studio 2012 and Visual Studio 2013

1.0.6.318 (July 9, 2011)

  • Add syntax highlighting for Javadoc comments
  • Addressed several potential performance problems

1.0.5.311 (July 8, 2011)

  • Original release
 

VS2013Z学习java插件的更多相关文章

  1. 坚持:学习Java后台的第一阶段,我学习了那些知识

    最近的计划是业余时间学习Java后台方面的知识,发现学习的过程中,要学的东西真多啊,让我一下子感觉很遥远.但是还好我制定了计划,自己选择的路,跪着也要走完!关于计划是<终于,我还是下决心学Jav ...

  2. 使用mac学习java的一些基本操作

    使用mac学习java的一些基本操作 本文主要讲一下MacOS与windows的不同 iTerm2 使用mac的同学是不需要安装虚拟机来学习linux命令的.只需要使用iTerm2[下载地址]+zsh ...

  3. 如何学习Java?

    一点感悟 java作为一门编程语言,在各类编程语言中作为弄潮儿始终排在前三的位置,这充分肯定了java语言的魅力,在实际项目应用中,我们已经无法脱离javaa(Ps当然你可以选择不使用),但它的高性能 ...

  4. Gradle Java 插件

    Java 插件是构建 JVM 项目的基础,它为项目增加了很多能力,例如编译,测试,打包,发布等等. 很多插件都是基于 Java 插件实现的,例如 Android 插件. 用法 使用 id 应用插件 p ...

  5. 解决Ubuntu下Firefox+OpenJDK没有Java插件的问题

    如果是安装的OpenJDK,很遗憾它是没有libnpjp2.so的. 此时按照网上各种奇怪的方法都挣扎无效,但可以用icedtea插件来解决这个问题. icedtea的版本与本机安装的OpenJDK版 ...

  6. 零基础如何学习java更有效呢?

    零基础学java,不知道该如何入手?也不知道学习的方向,很多人会问零基础怎么样学习,有没有什么入门的书籍推荐:只要方法正确,零基础学好java也是有机会的哦. 一.理解Java思想 Java是一门面向 ...

  7. 积极主动敲代码,使用Junit学习Java程序设计

    积极主动敲代码,使用JUnit学习Java 早起看到周筠老师在知乎的回答软件专业成绩很好但是实际能力很差怎么办?,很有感触. 从读大学算起,我敲过不下100本程序设计图书的代码,我的学习经验带来我的程 ...

  8. 如何接触学习java

    信息科技必将是未来的潮流,Java语言必将在时代的进步中发挥不可估量的作用,未来,掌握好一门实用而且有良好应用前景的技术是你们的首要任务. 零基础怎么学Java 多年Java教育培训经验事实表明,零基 ...

  9. 零基础如何系统学习Java Web

    零基础如何系统学习Java Web?   我来给你说一说 你要下决心,我要转行做开发,这样你才能学成. 你要会打字,我公司原来有一个程序员,打字都是两个手一指禅,身为程序员你一指禅怎么写出的代码,半个 ...

随机推荐

  1. Tyvj3308毒药解药题解

    题目大意 这些药都有可能在治愈某些病症的同一时候又使人患上某些别的病症--经过我天才的努力.最终弄清了每种药的详细性能,我会把每种药能治的病症和能使人患上的病症列一张清单给你们,然后你们要依据这张清单 ...

  2. vue2.0 自定义 生成二维码(QRCode)组件

    1.自定义 生成二维码组件 QRCode.vue <!-- 生成二维码 组件 --> <template> <canvas class="qrcode-canv ...

  3. 使用Golang利用ectd实现一个分布式锁

    http://blog.codeg.cn/post/blog/2016-02-24-distrubute-lock-over-etcd/ By zieckey · 2016年02月24日 · 1205 ...

  4. cas 单点登录(SSO)之中的一个: jasig cas-server 安装

    cas 单点登录(SSO)实验之中的一个: jasig cas-server 安装 參考文章: http://my.oschina.net/indestiny/blog/200768#comments ...

  5. 为公司做crm资产管理

    一.实现会议室预定 二.实现调查问卷 三.项目背景初始化分析 四.简单的登陆注册 五.学生管理 六.老师管理 七.销售管理 八.客户关系管理 九.抢单管理 十.微信发消息发邮件管理 补充:数据表设计. ...

  6. kubernetes里的各种port解惑

    系列目录 在编排kubernetes时,Deployment的Pod项有containerPort,Service文件里的port,targetPort, nodePort,这些pod概念有些时候可能 ...

  7. 怎样高速编译mediatek\operator以下代码

    mediatek\operator以下有单独的apk.也有overlay的数据,单独的apk会配置anroid.mk,找到相应的路径直接build. 假设是overlay,则编译原来应用的路径,比如 ...

  8. windows下的txt格式转换成linux下的TXT

    存在的问题是 多出一个方框或者黑格子 主要是因为bash 不能忽略windows的问题 用sed 命令来处理,分别是windows转linux,linux转windows sed -e 's/.$// ...

  9. SAP-ABAP系列 第二篇SAP ABAP开发基础

    第二章SAP ABAP开发基础 1.ABAP数据类型及定义 ABAP程序中共包含8种基本数据类型定义, 类型名称 描述 属性 C Character Text (字符类型) 默认长度=1,默认值 = ...

  10. 零基础学python-2.18 异常

    这一节说一下异常except 继续沿用上一节的代码.我有益把文件名称字搞错.然后在结尾部分加上异常捕捉: try: handler=open("12.txt")#在这里我特别将文件 ...