【问题标题】:How to fix the following error in Catch block of Java code?如何修复 Java 代码的 Catch 块中的以下错误?
【发布时间】:2016-06-08 01:22:55
【问题描述】:

我有一个代码 sn-p 在我的代码的 catch 块下使用 printStackTrace() 时抛出错误。以下是代码sn-p。

         try
     {
            # Debug Code added on 19 Feb 2016
            logger.log(Level.INFO, "baseDNs[i] = "+baseDNs[i]);
            logger.log(Level.INFO, "search ="+search);
            logger.log(Level.INFO, "attributes = "+attributes);

        it = basicCmAgent.find_managed_objects(baseDNs[i], search, attributes);
     }
     catch(Exception e)
     {
        # Debug Code added on 19 Feb 2016
        logger.log(Level.SEVERE, "Caught Error : "+e.printStackTrace());

        logger.log(Level.WARNING, "Could not find managed objects with base DN " + baseDNs[i]);
        return false;
     }

以下是错误:

       asses/xml-apis.jar:../3pp_libraries/cxa_classes/irp3gppR99_330_j140.jar -d lib com/ericsson/nms/temip/importer/BasicCmConnection.java
    com/ericsson/nms/temip/importer/BasicCmConnection.java:177: 'void' type not allowed here
            logger.log(Level.SEVERE, "Caught Error : " +e.printStackTrace());
                                     ^
Note: ./com/ericsson/nms/temip/importer/BasicCmConverter.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
1 error
*** Error exit code 1

Stop.
*** Error exit code 1

Stop.

我该如何解决这个问题?

【问题讨论】:

  • 那些投反对票的家伙是怎么回事?我知道对于某些人来说这可能不是一个很大的问题,但对于像我这样的初学者来说这仍然是一个问题。

标签: java try-catch printstacktrace


【解决方案1】:

问题出在这一行

 logger.log(Level.SEVERE, "Caught Error : "+e.printStackTrace());

e.printStackTrace 的返回类型为 void。不能连接 String +void。

更好地使用 e.getStactTrace();

【讨论】:

    【解决方案2】:

    e.printStackTrace() 不返回 String 它返回 void 并打印堆栈跟踪。您正在尝试执行 String + void = String ,但这是行不通的。

    【讨论】:

      【解决方案3】:

      printStackTrace() 具有 void 返回类型,因此您不能将其连接到 String 或将其用作其他方法的参数。

      您可能想改用getStackTrace()

      logger.log(Level.SEVERE, "Caught Error : "+e.getStackTrace());
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-10-05
        • 1970-01-01
        相关资源
        最近更新 更多