当前位置: 首页 > 知识库问答 >
问题:

Groovy将String转换为Long

华星驰
2023-03-14

我正在编写一个jenkins管道,我需要将String参数转换为Long值。

我已经使用Long.value,Long.parse。我得到这个错误消息:

Hudson . remoting . proxy exception:groovy . lang . missingmethodexception:没有方法的签名:java.lang.Class.parseLong()适用于参数类型:(java.lang.String)值:[8899986991733205013]

或者这个:

hudson.remoting.ProxyExcsion:groovy.lang.Mis的方法异常:没有签名的方法:java.lang.Class.value()适用于参数类型:(java.lang.字符串)值:[8899986991733205013]

我的代码 :

    def min = Long.valueOf(params.paymentid) + Integer.valueOf(params.begin)
    def max = Long.valueOf(params.paymentid) + Integer.valueOf(params.end)

知道吗?谢谢。

共有3个答案

周宏胜
2023-03-14

我在管理控制台中尝试了这个解决方案:

print(params.paymendid.toLong())

成功了。在我的管道上它不起作用,我收到此错误:

org.jenkinsci.plugins.scriptsecurity.sandbox.RejectedAccessException: 脚本不允许使用staticMethod org.codehaus.groovy.runtime.DefaultGroovyMethods toLong java.lang.String

但是这个解决方案:https://stackoverflow.com/a/39412951/8357778是可行的。

我应该禁用沙盒。

邵弘义
2023-03-14

以下转换也适用。

Long paymentId = params.paymentid as Long
println paymentId

你可以把这个块放在try..catch 块,用于在字符串无效时处理任何类型的强制转换异常。

赫连明诚
2023-03-14

您应该使用 Long 类:

def min = Long.valueOf('1')
 类似资料:
  • 问题内容: 我正在开发一些应用程序,它允许从SD卡中选择图像,将其保存到数据库中并为ImageView设置此值。我需要知道将uri转换为字符串并将字符串转换为uri的方法。现在,我使用了Uri的getEncodedPath()方法,但是例如,此代码不起作用: 因此,我不知道如何将Uri保存到数据库中并根据保存的值创建新的Uri。请帮我修复它。 问题答案: 我需要知道将uri转换为字符串并将字符串转

  • 问题内容: 如何从float转换为string或从string转换为float? 在我的情况下,我需要在2个值字符串(我从表中获得的值)和我计算出的浮点值之间进行断言。 我尝试从浮动到字符串: 但是断言失败 问题答案: 使用Java的类。 为了进行比较,将字符串转换为float并比较两个float总是更好。这是因为对于一个浮点数,存在多个字符串表示形式,与字符串相比,它们是不同的(例如“ 25”!

  • 问题内容: 我只想编写这样的代码: 我以为可以代表任何类型,所以也可以代表任何类型,现在我知道我错了,是一个整体类型,不能视为。 因此,有人可以帮助我如何使此代码正常工作,或其他解决方案吗? PS :我知道或可以相互转换,但是实际上这并不是我的意图,可能还有另一种类型,而不是and 。 问题答案: 现在我知道我错了,是一个整体类型,不能视为。 是的,那是因为它是它自己的类型(而不是其他任何类型的“

  • 问题内容: 我将日期以这种格式存储在SQLite数据库中: 当我以这种格式检索日期时,除小时外,其他一切都很好。时间总是如此。这是我的输出: 这是代码: 我究竟做错了什么? 问题答案: 我认为您的日期格式没有意义。没有13:00 PM。删除格式末尾的“ aaa”,或将HH转换为hh。 不过,这对我来说很好: 它将打印“ 2010年4月29日星期四CEST”。

  • 问题内容: 我想将对象转换为 Java。 格式为 问题答案: 转换日期为字符串使用方法:

  • 将转换为的最佳方法是什么?我有下面的代码,我们有更干净的方式吗?