草庐IT

您如何设置用户属性,以便我可以使用Firebase跟踪分析

我希望尝试将“员工”的用户属性设置为我的应用程序的特定用户,以便我可以将其数据从FirebaseAnalytics中排除。我已经研究了Firebase的文档,并且据我了解,您可以设置用户属性,但要通过提示用户回答问题来做到这一点。例如。以下示例显示了添加假设的最喜欢的食品属性,该属性将弦乐食品中的值分配给活跃用户:Analytics.setUserProperty(food,forName:"favorite_food")是否有一种方法可以根据其电子邮件地址分配用户属性,例如,如果用户电子邮件地址包括“@Company.com”,则将员工的用户属性分配给他们。我也在使用ReactNative。

java - 我可以在一种测试方法中测试多个抛出的异常吗?

我有一个明确指定的接口(interface),并针对它编写我的JUnit测试:publicinterfaceShortMessageService{/***Createsamessage.Amessageisrelatedtoatopic*Createsadateforthemessage*@throwsIllegalArgumentException,ifthemessageislongerthen255characters.*@throwsIllegalArgumentException,ifthemessageistshorterthen10characters.*@throws

Java 9 - 我可以将 MainClass 属性添加到存档中的 module-info.class 吗?

这个问题在这里已经有了答案:IsMavenreadyforJDK9?(6个答案)关闭5年前。在Java9中,您可以使用以下命令创建JAR文件jar--create--file=mlib/com.greetings.jar--main-class=com.greetings.Main-Cmods/com.greetings.这具有将MainClass属性添加到.jar文件中的module-info.class文件的副作用。是否有任何插件支持此功能,或者我是否需要直接调用Java9“jar”命令?这是提出这些问题的正确论坛,还是有更好的地方?干杯,埃里克

java - 我可以设置 Java VM 可用的线程/CPU 数量吗?

我想限制JavaVM可用的线程/进程数,类似于您设置可用内存的方式。我希望能够将其指定为仅使用1个线程或任意数量。注意:我无法在代码中设置它,因为我想限制的代码是一个我无法修改源代码的库。所以这肯定是对虚拟机的级别强加的硬上限。(或者,如果您可以对可以覆盖库的应用程序本身施加线程限制?)注意2:此目的是性能测试,以限制我要测试的库,以查看当它访问不同数量的CPU/线程时它的性能如何。谢谢! 最佳答案 JVM中的CPU限制问题在Java10中得到解决,并从build8u191向后移植到Java8:-XX:ActiveProcessor

java - 我可以使用自定义算法而不是使用 RabbitMQ 的循环调度消息吗?

我正在使用RabbitMQ的循环功能在多个消费者之间发送消息,但一次只有一个消费者接收实际消息。我的问题是我的消息代表任务,我想在我的消费者上有本地session(状态)。我事先知道哪些消息属于哪个session,但我不知道使用我指定的算法将RabbitMQ发送给消费者的最佳方法是什么(或者有什么方法吗?)。我不想编写自己的编排服务,因为它会成为瓶颈,而且我不想让我的生产者知道哪个消费者会接收他们的消息,因为我会失去使用Rabbit获得的解耦。有没有办法让RabbitMQ根据预定义的算法/规则而不是循环法将我的消息发送给消费者?说明:我使用了几个用不同语言编写的微服务,每个服务都有自己

java - 我可以从实时 JVM 转储当前线程堆栈变量吗?

我需要查看2个死锁线程的堆栈以分析情况。JVM现在是实时的,数据也在那里,但我需要某种工具来从进程中提取它。我只关心String类型的堆栈中的6个变量。非常感谢任何想法。JVM版本6_35,它是一个linux,启用了JMX,但我没有profiler/在其上配置的调试器连接。很难重现。 最佳答案 我发现了一个使用堆转储查看器的小技巧(在本例中是YourKit,但其他人也可以)。基本上你枚举Thread类的所有实例,然后你通过名称找到你想要的线程并打开它。堆栈变量标记为,如下所示:并不是所有的变量都在这里,但是所有作为参数传递给方法的变

java - 我可以定义 Eclipse 清理规则的异常(exception)吗?

大多数情况下,Eclipse中的清理规则(首选项>Java>代码样式>清理)可以完美运行并创建美观的代码。但有时,尤其是对于注释和连接的字符串片段(如内联SQL查询),清理只会把事情搞砸,并破坏我的格式。有没有办法对Eclipse说“不要碰这个文本block!我已经按照我喜欢的方式对其进行了格式化,你只会降低它的可读性”??p> 最佳答案 我假设您的意思不是真正的“清理”,而是隐藏在其中的“格式化源代码”选项。它在Preferences>Java>CodeStyle>Formatter中配置。而且,确实,有一个名为“开/关标签”的选

java - 我可以让 Tomcat 作为转储堆的服务运行吗?

我正在尝试让Tomcat(目前作为服务在Windows2003机器上运行)在OutOfMemoryError上转储堆。(Tomcat正在运行Hudson,它在我构建的尾端报告堆空间问题。手动运行构建不会产生此类错误。Hudson人员需要堆转储才能开始。)按照其他地方的说明,我已经告诉Apache服务监视器配置它用来运行Tomcat的JVM,以便在遇到OutOfMemoryError时通过将以下内容添加到JVM选项来转储堆:-XX:+HeapDumpOnOutOfMemoryError然后我再次运行构建。果然,它报告存在堆错误。我扫描整个磁盘寻找默认的java_pid123.hprof文

java - 我可以从 Eclipse 调试器中的 void 方法返回 "Force Return"吗?

在Eclipse中进行调试时,通过执行强制返回(我之前使用非void方法做过)来避免void函数的副作用对我很有用。但是,当我尝试从void方法返回时,上下文菜单项总是被禁用。具体来说,我尝试在调试时进入“显示”Pane,输入我想要返回的值,右键单击并选择“强制返回”。显然,void方法不应返回任何内容,因此我可以理解为什么禁用此菜单项。有谁知道这样做的方法,或者Java的某些特性是否禁止我这样做? 最佳答案 是的,你可以这样做,不要使用变量显示中的上下文菜单,但在你的代码中右键单击,你会在上下文菜单中看到“强制返回”。

java - 我可以使用 Java 注释来定义编译时检查吗?

例如,我想为目标参数创建注解@Out。然后我会以某种方式使用编译器检查函数返回之前是否设置了参数值。这可能吗?还考虑了一个@Immutable注释,它不允许调用任何未用@Const注释的方法或访问任何公共(public)字段。(编译时间和可能的运行时间?)到目前为止我有这个://I'massumingClassretentionisasubsetofRuntimeretention@Retention(RetentionPolicy.RUNTIME)@Target(ElementType.PARAMETER)public@interfaceOut{//noideawhattogoinh