我正在使用 proguard 和 Android Studio 混淆我的 apk。
当我反编译我的apk时,我可以看到很多文件,比如aaa.java、aab.java。等等...但我项目中的所有文件都具有原始名称。
有没有办法混淆我的项目的文件名???
这是我的 proguard-rules.pro
##---------------Begin: proguard configuration common for all Android apps ----------
-optimizationpasses 5
-dontskipnonpubliclibraryclassmembers
-dontpreverify
-dump class_files.txt
-printseeds seeds.txt
-printusage unused.txt
-printmapping mapping.txt
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
#-injars bin/classes
#-injars libs
#-outjars bin/classes-processed.jar
-allowaccessmodification
#-keepattributes *Annotation*
-renamesourcefileattribute SourceFile
-keepattributes SourceFile,LineNumberTable, LocalVariableTable,LocalVariableTypeTable
-repackageclasses ''
#-keep public class * extends android.app.Activity
-keep public class * extends android.app.Application
-keep public class * extends android.app.Service
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Amazon Elastic Beanstalk 中上传 Lumen 项目。
.env 在 .gitignore 中。
这没关系,因为我有几个环境(dev、qa、prod),所以我需要为每个环境配置单独的 env 变量
我收到此错误消息:
Fatal error: Uncaught exception 'InvalidArgumentException' with message 'Dotenv: Environment file .env not found or not readable. Create file with your environment settings at /var/app/current/bootstrap/../.env' in /var/app/current/vendor/vlucas/phpdotenv/src/Dotenv.php:33 Stack trace: #0 /var/app/current/bootstrap/app.php(4): Dotenv::load('/var/app/curren...') #1 /var/app/current/public/index.php(13): require('/var/app/curren...') #2 {main} thrown in /var/app/current/vendor/vlucas/phpdotenv/src/Dotenv.php on line 33
Run Code Online (Sandbox Code Playgroud)
我知道系统没有找到 .env
事情是我在 Amazon Console 中设置了变量:
Software Configuration
Environment variables: APP_ENV, DB_USERNAME, DB_PASSWORD, DB_DATABASE, DB_HOST, APP_KEY
Run Code Online (Sandbox Code Playgroud)
eb 打印环境:
Environment Variables:
DB_DATABASE = ebdb …Run Code Online (Sandbox Code Playgroud) amazon-web-services laravel amazon-elastic-beanstalk lumen phpdotenv
我有这个问题:
$tournament = Tournament::with(
'championships',
'championships.settings',
'championships.category',
'championships.tree.users',
)->first();
Run Code Online (Sandbox Code Playgroud)
现在,它给了我所有附加锦标赛的锦标赛.
我需要的是参加锦标赛,但只有我所拥有的$ request-> ChampionshipId锦标赛.
当然,我也想在所有其他关系中使用这个过滤器('championships.settings','championships.category','championships.tree.users')任何想法?
我刚刚安装了我的开发环境。
当我尝试通过 SequelPro 连接 mysql db 时,我得到:
Authentication plugin 'caching_sha2_password' cannot be loaded
Run Code Online (Sandbox Code Playgroud)
如:无法加载身份验证插件 'caching_sha2_password',我运行:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '';
Run Code Online (Sandbox Code Playgroud)
然后我可以通过 SequelPro 连接我的数据库
但是当我执行 Laravel 命令时:
php artisan migrate
Run Code Online (Sandbox Code Playgroud)
我得到:
PDOException::("PDO::__construct(): Unexpected server respose while doing caching_sha2 auth: 109")
Run Code Online (Sandbox Code Playgroud)
我现在该怎么办 ?
PD:我在 Mac 上使用 Laravel Valet,而 Laravel 5.6。
我想将所有模型放在共享Common库中。
所以,我做了一个新的回购协议:gitlab.com/xxx/common
里面我放了一个包:models
这是一个对象的定义:
type Meter struct {
ID string
OperationID string
Type ConsoProd
Unit string
Timestep time.Duration
Measures []Measure
FetchMethod AcquisitionMethod
Metadata interface{}
}
Run Code Online (Sandbox Code Playgroud)
现在,我想在外部项目中使用它,我这样做:
go get gitlab.com/xxx/common
Run Code Online (Sandbox Code Playgroud)
Go Modules 将下载它。
我像这样导入使用它:
import "gitlab.com/xxx/common/models"
//String transparent method
func (meter models.Meter) String() string {
var stringifyMeter string
stringifyMeter += "Meter " + meter.ID + " is a " + meter.Type.String() + " and compute in operation #" + meter.OperationID + "."
return stringifyMeter
}
Run Code Online (Sandbox Code Playgroud)
但 Goland …
我有一项仅对 influxDB 进行查询(读/写)的服务。
我想对此进行单元测试,但我不知道该怎么做,我读过很多关于模拟的教程。很多涉及像go-sqlmock这样的组件。但由于我使用的是 influxDB,所以无法使用它。
我还发现我尝试使用的其他组件(例如goMock或testify)过于复杂。
我认为要做的是创建一个存储库层,一个应该实现我运行/测试所需的所有方法的接口,并通过依赖注入传递具体类。
我认为这可行,但这是最简单的方法吗?
我想到处都有存储库,即使对于小型服务,只是为了它们可测试,似乎是过度设计的。
如果需要,我可以给你代码,但我认为我的问题有点理论性多于实际性。这是模拟自定义数据库进行单元测试的最简单方法。
我有这个功能
function getData(file, type) {
let data = [];
fs.createReadStream(file)
.pipe(csv({headers: false, separator: ';',}))
.on('data', (row) => {
let item = {
date: row[0],
value: row[1]
};
let item2 = {
date: moment(row[0], "DD-MM-YYYY HH:mm").add(30, "minutes").format("DD/MM/YYYY HH:mm"),
value: row[2]
};
data.push(item);
data.push(item2);
})
.on('end', () => {
return data;
});
}
Run Code Online (Sandbox Code Playgroud)
我想返回在 csv 中解析的数据,但是当我在.on方法中返回数据时,数据为空。
我该怎么办呢?
Postgres 无法开始给出错误:
PANIC could not locate a valid checkpoint record
Run Code Online (Sandbox Code Playgroud)
在谷歌上,有很多解决方案,但都需要连接pod来执行一些pg命令。
但是,当我使用 K8S 时,我的 pod 处于 status: 状态CrashLoopBackOff,所以我无法再连接到我的 pod。
我应该如何修复我的 postgres 数据库?
编辑:
我试图运行命令:
pg_resetwal /var/lib/postgresql/data
Run Code Online (Sandbox Code Playgroud)
和:
...
spec:
containers:
- args:
- pg_resetwal
- /var/lib/postgresql/data
Run Code Online (Sandbox Code Playgroud)
但我得到:
pg_resetwal: cannot be executed by "root"
You must run pg_resetwal as the PostgreSQL superuser.
Run Code Online (Sandbox Code Playgroud)
可以更进一步...
编辑2:
我尝试运行一个附加了相同卷和相同 postgres 容器的新 pod,但将命令更改为: pg_resetwal /var/lib/postgresql/data
我还补充道:
securityContext:
runAsUser: 0
Run Code Online (Sandbox Code Playgroud)
这是用于部署的 yaml:
apiVersion: apps/v1
kind: Deployment
metadata:
annotations:
reloader.stakater.com/auto: "true"
labels:
app: metadata-postgres-fix
name: metadata-postgres-fix …Run Code Online (Sandbox Code Playgroud) 我正在尝试为我的 gitlab 项目显示准确的覆盖范围徽章。
事情是我有几个包,在 gitlab-ci.yml 中,我运行
go test $(go list ./... | grep -v /vendor/) -v -coverprofile .testCoverage.txt
Run Code Online (Sandbox Code Playgroud)
我的输出是这样的:
$ go test -coverprofile=coverage.txt -covermode=atomic ./...
ok gitlab.com/[MASKED]/pam 10.333s coverage: 17.2% of statements
ok gitlab.com/[MASKED]/pam/acquisition 0.004s coverage: 57.7% of statements
ok gitlab.com/[MASKED]/pam/acquisition/api 0.005s coverage: 72.1% of statements
ok gitlab.com/[MASKED]/pam/acquisition/ftp 24.936s coverage: 73.1% of statements
ok gitlab.com/[MASKED]/pam/repartition 0.004s coverage: 90.1% of statements
Run Code Online (Sandbox Code Playgroud)
我在 Gitlab 中解析正则表达式的测试覆盖率是:
^coverage:\s(\d+(?:\.\d+)?%)
Run Code Online (Sandbox Code Playgroud)
如果我检查 .testCoverage,我会得到很多这样的行:
gitlab.com/[MASKED]/pam/repartition/repartition.go:54.33,56.5 1 1
Run Code Online (Sandbox Code Playgroud)
因此,它给我的结果90.1%是仅覆盖最后一个包的情况。
我该怎么办呢?
我在哪里做管道:
#!/bin/groovy
pipeline {
agent none
environment {
agent any
INSTANCE_NAME = "Jenk"
}
stages {
stage("Print Debug Vars"){
steps {
sh 'echo "INSTANCE_NAME is $INSTANCE_NAME"'
}
}
stage("Git Checkout") {
agent { label 'docker' }
steps {
// ...
}
}
}
stage("Ansible Galaxy"){
agent { label 'ansible' }
steps {
// ...
}
}
}
}
Run Code Online (Sandbox Code Playgroud)
问题我,如果我把
agent any
Run Code Online (Sandbox Code Playgroud)
在环境部分,它说:
WorkflowScript: 6: "agent any" is not a valid environment expression. Use "key = value" pairs with valid Java/shell …Run Code Online (Sandbox Code Playgroud) go ×3
laravel ×3
android ×1
eloquent ×1
go-modules ×1
groovy ×1
java ×1
jenkins ×1
kubernetes ×1
lumen ×1
mocking ×1
mysql ×1
mysql-8.0 ×1
node.js ×1
phpdotenv ×1
postgresql ×1
proguard ×1
testing ×1
unit-testing ×1
valet ×1