在接受将项目更新为新版本的gradle后,我收到此错误:
Error:Execution failed for task ':app:processDebugManifest'.
Manifest merger failed : Attribute meta-data#android.support.VERSION@value value=(26.0.0-alpha1) from [com.android.support:cardview-v7:26.0.0-alpha1] AndroidManifest.xml:24:9-38
is also present at [com.android.support:design:25.3.1] AndroidManifest.xml:27:9-31 value=(25.3.1).
Suggestion: add 'tools:replace="android:value"' to <meta-data> element at AndroidManifest.xml:22:5-24:41 to override.
Run Code Online (Sandbox Code Playgroud)
我怎么解决这个问题?这是我的应用程序build.gradle文件:
android {
compileSdkVersion 25
buildToolsVersion "25.0.2"
defaultConfig {
applicationId "com.sample.bookReader"
minSdkVersion 16
targetSdkVersion 25
versionCode 1
versionName "1.0"
}
...
}
dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:multidex:+'
compile 'com.android.support:appcompat-v7:26.0.0-alpha1'
compile 'com.android.support:cardview-v7:26.0.0-alpha1'
compile 'com.android.support:design:25+'
compile 'com.jakewharton:butterknife:8.2.1'
apt 'com.jakewharton:butterknife-compiler:8.2.1'
...
}
Run Code Online (Sandbox Code Playgroud)
这是项目的build.gradle …
基于我正在阅读的Django文档,似乎signals.py在app文件夹中是一个很好的开始,但我面临的问题是,当我创建信号时pre_save,我尝试从模型中导入类,它与import在我的模型中.
# models.py
from django.contrib.auth.models import User
from django.db import models
from django.utils.translation import gettext as _
from signals import *
class Comm_Queue(CommunicatorAbstract):
queue_statuses = (
('P', _('Pending')),
('S', _('Sent')),
('E', _('Error')),
('R', _('Rejected')),
)
status = models.CharField(max_length=10, db_index=True, default='P')
is_html = models.BooleanField(default=False)
language = models.CharField(max_length=6, choices=settings.LANGUAGES)
sender_email = models.EmailField()
recipient_email = models.EmailField()
subject = models.CharField(max_length=100)
content = models.TextField()
Run Code Online (Sandbox Code Playgroud)
# signals.py
from django.conf import settings
from django.db.models.signals import pre_save
from django.dispatch import receiver
from …Run Code Online (Sandbox Code Playgroud) 假设我有这个隐藏的“基础”工作。
.base_job:
rules:
- if: "$CI_COMMIT_TAG"
when: never
- if: '$CI_PIPELINE_SOURCE == "web"'
Run Code Online (Sandbox Code Playgroud)
我想将这些规则添加到新工作中,并且也能够扩展它们,例如:
job_1:
rules:
- <add .base_job here>
- if: "$CI_MERGE_REQUEST_IID"
job_2:
rules:
- <add .base_job here>
- if: "$CI_COMMIT_BRANCH == $CI_DEFAULT_BRANCH"
Run Code Online (Sandbox Code Playgroud)
请注意,job_1和job_2有不同的规则,包括来自.base_job。
如果我要使用extends,这些作业将只有自定义规则,因为根据文档:
You can use extends to merge hashes but not arrays.
到目前为止,我的解决方案是复制粘贴这两项工作的规则,但我想让它更加干燥。
有关如何做的任何提示?
我已经按照Android开发人员的教程使用工作管理器结构在后台运行我的代码,但是当我尝试将我的工作人员排队时它不会运行,我收到以下错误:
2018-10-04 22:25:47.004 28669-28885/app.package.com.debug E/DefaultWorkerFactory: Could not instantiate app.package.com.MyWorker
java.lang.NoSuchMethodException: <init> []
at java.lang.Class.getConstructor0(Class.java:2320)
at java.lang.Class.getDeclaredConstructor(Class.java:2166)
at androidx.work.DefaultWorkerFactory.createWorker(DefaultWorkerFactory.java:58)
at androidx.work.impl.WorkerWrapper.runWorker(WorkerWrapper.java:180)
at androidx.work.impl.WorkerWrapper.run(WorkerWrapper.java:117)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1162)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:636)
at java.lang.Thread.run(Thread.java:764)
2018-10-04 22:25:47.005 28669-28885/app.package.com.debug E/WorkerWrapper: Could for create Worker app.package.com.MyWorker
Run Code Online (Sandbox Code Playgroud)
我已经看到这个问题可能与worker上的默认构造函数有关但我已经使用了正确的构造函数而不是不推荐使用的默认函数.
我的工人被宣布为:
public class MyWorker extends Worker {
public MyWorker(@NonNull Context context, @NonNull WorkerParameters workerParams) {
super(context, workerParams);
}
@NonNull
@Override
public Result doWork() {
// Doesn't even get called
}
}
Run Code Online (Sandbox Code Playgroud)
它就像这样排队:
WorkManager workManager = WorkManager.getInstance();
if (myWorkerRequest == null) …Run Code Online (Sandbox Code Playgroud) 如何使用 PHP 将文件添加到 zip 文件内的文件夹?
例如,如果我有 zip 文件:
myzip.zip
|-hello.doc
Run Code Online (Sandbox Code Playgroud)
如果我想将文件“example.jpg”添加到“images”文件夹中,则 zip 文件将是:
myzip.zip
|-hello.doc
|-images
|-example.jpg
Run Code Online (Sandbox Code Playgroud)
我怎样才能实现这个目标?
当我在基于类的视图中使用HttpResponseRedirect时,我遇到了这个问题:
def get_success_url(self):
search = searchViews.getIndexInstance()
search.mainfunc(self.contentForSearch, self.discussion.pk)
return HttpResponseRedirect(reverse('discussion-detail', kwargs={'slug':self.discussion.slug}))
Run Code Online (Sandbox Code Playgroud)
在django中的CreateView的get_success_url()内部.
Traceback:
File "/home/nithin/djangopro/djangoenv/local/lib/python2.7/site-packages/django/core/handlers/base.py" in get_response
132. response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "/home/nithin/djangopro/djangoenv/local/lib/python2.7/site-packages/django/views/generic/base.py" in view
71. return self.dispatch(request, *args, **kwargs)
File "/home/nithin/djangopro/djangoenv/local/lib/python2.7/site-packages/django/utils/decorators.py" in _wrapper
34. return bound_func(*args, **kwargs)
File "/home/nithin/djangopro/djangoenv/local/lib/python2.7/site-packages/django/contrib/auth/decorators.py" in _wrapped_view
22. return view_func(request, *args, **kwargs)
File "/home/nithin/djangopro/djangoenv/local/lib/python2.7/site-packages/django/utils/decorators.py" in bound_func
30. return func.__get__(self, type(self))(*args2, **kwargs2)
File "/home/nithin/djangopro/viewanalyse/discussion/views.py" in dispatch
30. return super(LoggedInMixin, self).dispatch(*args, **kwargs)
File "/home/nithin/djangopro/djangoenv/local/lib/python2.7/site-packages/django/views/generic/base.py" in dispatch
89. return handler(request, *args, **kwargs)
File "/home/nithin/djangopro/djangoenv/local/lib/python2.7/site-packages/django/views/generic/edit.py" in post …Run Code Online (Sandbox Code Playgroud) 我正在使用gif diff --shortstat filename来获取文件中更改的行数。输出示例如下:
1 file changed, 1 insertion(+), 1 deletion(-)
Run Code Online (Sandbox Code Playgroud)
现在我想使用该命令sed并仅提取插入和删除的数量,在这种情况下1和1.
我正在使用sed匹配和提取组,但我git再次从命令中得到相同的文本。我的命令如下(试图只获取插入行号)。
sed "s/\([0-9]+\) insertion/\1/"
Run Code Online (Sandbox Code Playgroud)
因此,完整的执行将类似于:
$ git diff --shortstat filename | sed 's/\([0-9]+\) insertion/\1/'
> 1 file changed, 1 insertion(+), 1 deletion(-)
Run Code Online (Sandbox Code Playgroud)
我需要改变什么才能让它工作,或者有没有其他方法可以做到这一点?
我想知道是否有一个数学表达式可以用来找到两个数字之间的这种关系.
输入和预期输出的一些示例如下:
Input Multiple Result
4 3 3
6 3 6
8 3 6
4 4 4
12 4 12
16 5 15
Run Code Online (Sandbox Code Playgroud)
此外,Wolfram Alpha下面的表达式向我展示了预期的结果,但由于他们没有扩展关于如何做到这一点的解释,我无法向他们学习......