小编Mar*_*ies的帖子

如何正确构建IntelliJ的罐子?

我有一个包含单个模块和一些依赖项的项目.我想在一个单独的目录中创建一个包含已编译模块的jar.另外,我希望我的模块旁边有依赖项.

无论我如何扭曲IntelliJ的"构建jar"进程,我模块的输出都显示为空(除了META-INF文件).

java build-process jar intellij-idea

483
推荐指数
7
解决办法
54万
查看次数

如何强制Android Studio从欢迎屏幕开始?

是否可以让Android Studio进入欢迎屏幕而不是直接加载最近的最新项目?

我不是真的最快的电脑,我经常需要在项目之间切换,有时真的很烦人.

settings jetbrains-ide startup intellij-idea android-studio

76
推荐指数
2
解决办法
4万
查看次数

防止用户解除通知

某些应用程序的通知无法通过滑动来解除.

我该如何管理这种行为?

notifications android dismiss android-notifications

59
推荐指数
2
解决办法
2万
查看次数

未能找到Build Tools修订版21.1.1 - sdk是最新的

我正在运行linux android sdk安装,我的新项目需要Build tools 21.1.1

不知何故,这个构建工具不存在,尽管我的sdk是最新的,但是在build-tools文件夹中现在有android-4.4W文件夹

android update sdk --no-ui

在此输入图像描述

我的sdk/build-tools文件夹

在此输入图像描述

我已经将内容以testwise方式移动到21.1.1文件夹,但这也未被识别.

这是一个错误吗?如何获得正确的构建工具?

linux android revision build-tools gradle

59
推荐指数
3
解决办法
8万
查看次数

如何在Ubuntu Docker镜像中运行wget?

我正在尝试在Ubuntu容器中下载Debian软件包,如下所示:

sudo docker run ubuntu:14.04 wget https://downloads-packages.s3.amazonaws.com/ubuntu-14.04/gitlab_7.8.2-omnibus.1-1_amd64.deb
Run Code Online (Sandbox Code Playgroud)

我明白了

exec: "wget": executable file not found in $PATH
Run Code Online (Sandbox Code Playgroud)

我已经安装wget了docker,如下所示:

run ubuntu:14.04 apt-get install wget
Run Code Online (Sandbox Code Playgroud)

我该如何下载文件?

ubuntu wget docker

59
推荐指数
3
解决办法
7万
查看次数

Proguard忽略了库的配置文件

我现在面临一个非常奇怪的问题......

我有一个带有两个模块的Gradle应用程序,一个主模块和一个库模块.

  • 在这两个模块中,我已经声明了一个正确的proguard-rules.pro文件路径
  • 在两个.gradle文件中,我有minifyEnabled为true

这是第一个问题:即使minifyEnabled在库中为false,它也会被混淆.它完全没有效果,似乎取决于主模块的设置.我现在使用proguard一段时间了,我从来没有经历过这样的行为.

此外,库的proguard-rules.pro似乎完全被忽略了.我在那里声明的并不重要,它没有被使用,结果总是相同的(总是反编译为查看结果).它使用默认设置进行模糊处理.

我使用了一个无效的proguard文件名来查看该文件是否被触摸,并且确实存在错误名称的错误,并且它还抱怨了proguard文件中的语法错误...

我不知道它是否与Android Studio的更新有关,因为它还建议我使用"minifyEnabled"而不是"runProguard".

如何管理proguard以使用库的proguard-rules.pro?

编辑:

我做了一个示例项目来澄清我的问题

在此输入图像描述

我的库的proguard配置

在此输入图像描述

我的图书馆的gradle:

在此输入图像描述

最后我得到的结果.我在proguard配置中排除/包含的内容并不重要

在此输入图像描述

如您所见,proguard规则在主模块上运行良好.它做了应有的事情.但它总是完全混淆我的图书馆...

它还完全删除了图书馆的活动,这根本不应该发生

android module proguard android-library android-studio

29
推荐指数
3
解决办法
2万
查看次数

从Android Studio中的Gradle项目导出未签名的apk

我通常用Eclipse创建项目并将它们导入Android Studio,因为我讨厌AS给我的项目结构.在模块设置中,我可以创建工件,允许我将构建的apk输出到某个路径.

在此输入图像描述

现在我直接用AS创建了一个Gradle项目,看起来这些项目的选项比eclipse项目少得多.我没有找到任何输出我的apk,我建立后在我的项目文件夹中找不到任何apk.

在此输入图像描述

如何从构建过程中获取未签名的apk?

android artifacts apk android-studio

28
推荐指数
3
解决办法
7万
查看次数

IntelliJ IDEA 中的“Revert Commit”和“Undo Commit”有什么区别?

在 IntelliJ Ultimate IDEA 2019.3(不确定何时引入)中,我们在版本控制 -> 日志选项卡中有“还原提交”和“撤消提交”选项。

在此处输入图片说明

这两个选项有什么区别?

git undo jetbrains-ide intellij-idea git-revert

28
推荐指数
1
解决办法
2万
查看次数

在android studio中隐藏"渲染问题"提示

是否有可能在xml编辑器预览中隐藏恼人的弹出窗口,说明存在渲染问题?

它与预览的一半重叠

xml rendering hide android-studio

24
推荐指数
2
解决办法
7525
查看次数

垂直和水平缩放Socket.io - 什么是"正确"的方式?

我想纵向横向扩展我的Node.js Socket应用程序,但我还没有找到一个复杂的解决方案.

我的应用程序有两个用例:

  1. 从一个用户向所有其他用户广播消息
  2. 将消息从一个用户推送到用户子集

一方面,我读到我需要Redis 和socket.io-redis 这两种情况

另一方面,我观看了这个视频并阅读了这个SO答案,其中说Redis不可靠并且不能保证发布的消息会到达,所以你应该只用它来进行聚类/垂直缩放

使用ServiceBus的 Microsoft Azures解决方案是不可能的,因为我不想使用Azure.

该家伙建议使用RabbitMQ进行水平缩放,而不是Redis .

对于垂直扩展,还有socket.io-clusterhub,一个用于节点进程的IPC,但它似乎只适用于Socket.io <= v0.9.0

然后就是这个人,他已经实现了自己的方法,通过HTTP请求将消息传递给其他节点,这在某种程度上是有道理的.但是为什么HTTP请求你是否也可以在服务器之间建立直接套接字连接,同时将消息推送到所有服务器并克服从一个服务器到另一个服务器的延迟?


作为结论,我想也许我可以在EACH服务器上使用Redis,只是为了在多个进程上集群我的应用程序时交换消息,以及RabbitMQ作为S2S通信解决方案.

但是,每个服务器和另一个中央RabbitMQ有一个Redis似乎有点过分.

是否有任何已知的更短/更好的解决方案可以在两个方向上可靠地扩展Socket.io?


编辑:我曾尝试将单个Redis服务器用于多个Node.js服务器,其中每个服务器都通过粘性会话在所有核心上使用群集.虽然Clustering本身就像一个带有redis的魅力,但在使用多个服务器时似乎存在问题.消息不会到达其他节点.

scalability rabbitmq redis node.js socket.io

20
推荐指数
1
解决办法
1388
查看次数