https://kotlinlang.org logo
Join the conversationJoin Slack
Channels
100daysofcode
100daysofkotlin
100daysofkotlin-2021
advent-of-code
aem
ai
alexa
algeria
algolialibraries
amsterdam
android
android-architecture
android-databinding
android-studio
androidgithubprojects
androidthings
androidx
androidx-xprocessing
anime
anko
announcements
apollo-kotlin
appintro
arabic
argentina
arkenv
arksemdevteam
armenia
arrow
arrow-contributors
arrow-meta
ass
atlanta
atm17
atrium
austin
australia
austria
awesome-kotlin
ballast
bangladesh
barcelona
bayarea
bazel
beepiz-libraries
belgium
berlin
big-data
books
boston
brazil
brikk
budapest
build
build-tools
bulgaria
bydgoszcz
cambodia
canada
carrat
carrat-dev
carrat-feed
chicago
chile
china
chucker
cincinnati-user-group
cli
clikt
cloudfoundry
cn
cobalt
code-coverage
codeforces
codemash-precompiler
codereview
codingame
codingconventions
coimbatore
collaborations
colombia
colorado
communities
competitive-programming
competitivecoding
compiler
compose
compose-android
compose-desktop
compose-hiring
compose-ios
compose-mp
compose-ui-showcase
compose-wear
compose-web
connect-audit-events
corda
cork
coroutines
couchbase
coursera
croatia
cryptography
cscenter-course-2016
cucumber-bdd
cyprus
czech
dagger
data2viz
databinding
datascience
dckotlin
debugging
decompose
decouple
denmark
deprecated
detekt
detekt-hint
dev-core
dfw
docs-revamped
dokka
domain-driven-design
doodle
dsl
dublin
dutch
eap
eclipse
ecuador
edinburgh
education
effective-kotlin
effectivekotlin
emacs
embedded-kotlin
estatik
event21-community-content
events
exposed
failgood
fb-internal-demo
feed
firebase
flow
fluid-libraries
forkhandles
forum
fosdem
fp-in-kotlin
framework-elide
freenode
french
fritz2
fuchsia
functional
funktionale
gamedev
ge-kotlin
general-advice
georgia
geospatial
german-lang
getting-started
github-workflows-kt
glance
godot-kotlin
google-io
gradle
graphic
graphkool
graphql
graphql-kotlin
graviton-browser
greece
grpc
gsoc
gui
hackathons
hacktoberfest
hamburg
hamkrest
helios
helsinki
hexagon
hibernate
hikari-cp
hire-me
hiring
hongkong
hoplite
http4k
hungary
hyderabad
image-processing
india
indonesia
inkremental
intellij
intellij-plugins
intellij-tricks
internships
introduce-yourself
io
ios
iran
israel
istanbulcoders
italian
jackson-kotlin
jadx
japanese
jasync-sql
java-to-kotlin-refactoring
javadevelopers
javafx
javalin
javascript
jdbi
jhipster-kotlin
jobsworldwide
jpa
jshdq
juul-libraries
jvm-ir-backend-feedback
jxadapter
k2-early-adopters
kaal
kafka
kakao
kalasim
kapt
karachi
karg
karlsruhe
kash_shell
kaskade
kbuild
kdbc
kgen-doc-tools
kgraphql
kinta
klaxon
klock
kloudformation
kmdc
kmm-español
kmongo
knbt
knote
koalaql
koans
kobalt
kobweb
kodein
kodex
kohesive
koin
koin-dev
komapper
kondor-json
kong
kontent
kontributors
korau
korean
korge
korim
korio
korlibs
korte
kotest
kotest-contributors
kotless
kotlick
kotlin-asia
kotlin-beam
kotlin-by-example
kotlin-csv
kotlin-data-storage
kotlin-foundation
kotlin-fuel
kotlin-in-action
kotlin-inject
kotlin-latam
kotlin-logging
kotlin-multiplatform-contest
kotlin-mumbai
kotlin-native
kotlin-pakistan
kotlin-plugin
kotlin-pune
kotlin-roadmap
kotlin-samples
kotlin-sap
kotlin-serbia
kotlin-spark
kotlin-szeged
kotlin-website
kotlinacademy
kotlinbot
kotlinconf
kotlindl
kotlinforbeginners
kotlingforbeginners
kotlinlondon
kotlinmad
kotlinprogrammers
kotlinsu
kotlintest
kotlintest-devs
kotlintlv
kotlinultimatechallenge
kotlinx-datetime
kotlinx-files
kotlinx-html
kotrix
kotson
kovenant
kprompt
kraph
krawler
kroto-plus
ksp
ktcc
ktfmt
ktlint
ktor
ktp
kubed
kug-leads
kug-torino
kvision
kweb
lambdaworld_cadiz
lanark
language-evolution
language-proposals
latvia
leakcanary
leedskotlinusergroup
lets-have-fun
libgdx
libkgd
library-development
linkeddata
lithuania
london
losangeles
lottie
love
lychee
macedonia
machinelearningbawas
madrid
malaysia
mathematics
meetkotlin
memes
meta
metro-detroit
mexico
miami
micronaut
minnesota
minutest
mirror
mockk
moko
moldova
monsterpuzzle
montreal
moonbean
morocco
motionlayout
mpapt
mu
multiplatform
mumbai
munich
mvikotlin
mvrx
myndocs-oauth2-server
naming
navigation-architecture-component
nepal
new-mexico
new-zealand
newname
nigeria
nodejs
norway
npm-publish
nyc
oceania
ohio-kotlin-users
oldenburg
oolong
opensource
orbit-mvi
osgi
otpisani
package-search
pakistan
panamá
pattern-matching
pbandk
pdx
peru
philippines
phoenix
pinoy
pocketgitclient
polish
popkorn
portugal
practical-functional-programming
proguard
prozis-android-backup
pyhsikal
python
python-contributors
quasar
random
re
react
reaktive
realm
realworldkotlin
reductor
reduks
redux
redux-kotlin
refactoring-to-kotlin
reflect
refreshversions
reports
result
rethink
revolver
rhein-main
rocksdb
romania
room
rpi-pico
rsocket
russian
russian_feed
russian-kotlinasfirst
rx
rxjava
san-diego
science
scotland
scrcast
scrimage
script
scripting
seattle
serialization
server
sg-user-group
singapore
skia-wasm-interop-temp
skrape-it
slovak
snake
sofl-user-group
southafrica
spacemacs
spain
spanish
speaking
spek
spin
splitties
spotify-mobius
spring
spring-security
squarelibraries
stackoverflow
stacks
stayhungrystayfoolish
stdlib
stlouis
strife-discord-lib
strikt
students
stuttgart
sudan
swagger-gradle-codegen
swarm
sweden
swing
swiss-user-group
switzerland
talking-kotlin
tallinn
tampa
teamcity
tegal
tempe
tensorflow
terminal
test
testing
testtestest
texas
tgbotapi
thailand
tornadofx
touchlab-tools
training
tricity-kotlin-user-group
trójmiasto
truth
tunisia
turkey
turkiye
twitter-feed
uae
udacityindia
uk
ukrainian
uniflow
unkonf
uruguay
utah
uuid
vancouver
vankotlin
vertx
videos
vienna
vietnam
vim
vkug
vuejs
web-mpp
webassembly
webrtc
wimix_sentry
wwdc
zircon
Powered by Linen
russian
  • y

    yorlov

    10/13/2018, 8:50 AM
    Коллеги, в ktor 0.9.5 у меня есть вот такой роут
    authenticate {
    
    	get<Issue> { issue ->
    		val jira = call.principal<Jira>() ?: return@get call.respond(HttpStatusCode.Unauthorized)
    		call.respond(controller.onIssue(jira, issue))
    	}
    }
    Собственно тут мне очень не нравится эта часть
    ?: return@get call.respond(HttpStatusCode.Unauthorized)
    , но без нее никак ибо
    call.principal
    возвращает nullable тип Собственно, вопрос, почему так, в смысле почему
    call.principal
    потенциально может вернуть null? Я ожидал, что если аутентификация не прошла, то мой роут совсем не будет вызываться, а если я буду пытаться получить principal`a на роуте без аутентификации, то будет exception и дополнительных проверок делать не надо
    v
    • 2
    • 1
  • o

    orangy

    10/19/2018, 7:46 AM
    Кто на Joker? Приходите к нам на будку :) Поговорим за Kotlin!
    s
    • 2
    • 1
  • e

    Eugen Martynov

    10/31/2018, 8:46 AM
    Все ограничения на паблик конструктор и не возможность иметь инитиализаций
    g
    o
    • 3
    • 58
  • a

    Alexjok

    11/03/2018, 4:57 AM
    Всем привет! Какой вариант из арсенала kotlin coroutines больше всего подходит для асинхронного разбора кучи однотипных по структуре файлов, которые прилетают из mq?
    e
    • 2
    • 2
  • e

    Eugen Martynov

    11/05/2018, 9:12 PM
    привет всем, а можно ли с помощью psi или uast получить именованнный параметр у вызова функции Kotlin?
    m
    • 2
    • 1
  • l

    lewik

    11/16/2018, 9:23 AM
    @sandwwraith Я правильно понимаю, что теперь смело можно использовать JSON.parse/stringify а не JSON().parse/stringify и это будет потокобезопасно? И верно ли это же утверждение для CBOR?
    s
    • 2
    • 2
  • v

    ValV

    11/18/2018, 7:57 AM
    Где взять плагин для IDEA? Можно ли его собрать самому из исходников (какой Task за это отвечает)?
    l
    b
    s
    • 4
    • 12
  • l

    lewik

    11/19/2018, 6:57 AM
    ... как, сериализовать data class в свойстве которого есть List<SomeInterface> Раньше был
    @Serializable(with = PolymorphicSerializer::class)
    и все было ок. @sandwwraith
    s
    • 2
    • 11
  • a

    Alexjok

    11/26/2018, 1:01 PM
    надо, что-то типа бэкграунд Thread, но на корутинах
    g
    l
    • 3
    • 25
  • e

    enleur

    11/26/2018, 11:57 PM
    Странно что тут не было 🙂 https://habr.com/company/JetBrains/blog/431082/
    i
    • 2
    • 3
  • e

    elizarov

    11/30/2018, 7:21 AM
    📣 Ищу разработчка в команду Kotlin Libraries. Можно обращаться ко мне напрямую: https://spb.hh.ru/vacancy/29003616
    👍 4
    g
    • 2
    • 1
  • l

    lewik

    12/05/2018, 7:44 PM
    Почему https://kotlinlang.org картинки так долго грузятся?
    o
    r
    +3
    • 6
    • 13
  • l

    lewik

    12/06/2018, 8:00 PM
    Идеа не знает слова "Neuronetwork". Подчеркивает опечатку. Как работать в таких условиях?
    o
    g
    +3
    • 6
    • 13
  • v

    ValV

    12/08/2018, 1:35 PM
    Есть ли вероятность, что в будущем IDEA будет работать не на JVM, а нативно в Виндоуз/Линукс? Я просто представил, насколько бы улучшилась производительность/быстродействие среды, а то на ноутбуке часто приходится поглядвать на % использования ОЗУ
    g
    e
    +2
    • 5
    • 37
  • m

    msink

    12/08/2018, 1:39 PM
    Сейчас Kotlin/Native работает примерно на порядок медленнее JVM.
    v
    g
    +4
    • 7
    • 22
  • a

    Alexjok

    12/12/2018, 11:46 AM
    Всем привет! Ребят, а подскажите кто-нибудь при использовании kotlin 1.3+ и spring boot 2+ необходимо для всех бинов, конфигов ставить модификатор open? Мне пишет такое: org.springframework.beans.factory.parsing.BeanDefinitionParsingException: Configuration problem: @Configuration class 'MyClass' may not be final. Remove the final modifier to continue.
    e
    • 2
    • 10
  • l

    lewik

    12/20/2018, 11:29 PM
    У меня есть ByteArray с отрицательными байтами и я никак не могу послать его через сериализаторы потому что у него есть отрицательные значения. Но ведь в яве все байты signed...
    m
    b
    • 3
    • 3
  • a

    Alexjok

    01/09/2019, 11:20 AM
    Добрый день! Подскажите пожалуйста по корутинам, при использовании JMS разбираю сообщения асинхронно, код имеет примерно следующий вид:
    ovveride fun onMessage(message: Message) = runBlocking {
       worker()
    }
    
    fun worker(msg: String) = GlobalScope.launch
    {
        doSomeWork(msg)//какой-то долгий процесс  
    }
    Как лучше написать, чтобы была возможность контролировать количество одновременно работающих worker?
    r
    e
    • 3
    • 19
  • e

    Eugen Martynov

    01/13/2019, 12:20 AM
    kapt.use.worker.api=true в комбинации с Gradle 5.x не дает собраться проекту. kapt падает с OOM
    i
    • 2
    • 4
  • e

    Eugen Martynov

    01/13/2019, 1:56 AM
    Не нашел ничего такого @msink
    g
    • 2
    • 4
  • a

    alexey.tsvetkov

    01/14/2019, 2:22 PM
    @Eugen Martynov Лимит для враппера не очень важен. В 5.0 появились лимиты для воркеров, 512 Мб (раньше явного лимита не было). С воркер процессами в любом случае есть проблемы: Gradle не использует один процесс конкурентно, поэтому при параллельной сборке Gradle может создать CPU_THREADS процессов только для капта (для 4-ядерных процессоров с HT/SMT 8 процессов даже по 512 Мб это довольно много). В 1.3.20 режим с Worker API будет по-умолчанию запускать KAPT внутри основного процесса Gradle. К сожалению, наш DSL сейчас не позволяет настраивать количество памяти для KAPT воркер процессов, поэтому пока лучше использовать
    kapt.use.worker.api=false
    .
    👍 2
    e
    g
    • 3
    • 9
  • a

    Alexjok

    01/17/2019, 2:10 PM
    Привет всем! Ребят подскажите как переписать в функциональном стиле код по ссылке, хочу нарезать его на партиции по endPart и слепить строки в value вместе (пример работает, но выглядит не ок): https://try.kotlinlang.org/#/UserProjects/tg1br08satke7r89jd1bs8es3b/tlo4s04f8o1oimcpvldmf0c11b
    s
    t
    • 3
    • 7
  • a

    Alexjok

    01/24/2019, 7:31 AM
    Подскажите как вызвать
    fun CoroutineScope.myFun = produce<String>
    класса A из класса B?
    g
    g
    • 3
    • 5
  • s

    Sergey Morgunov

    01/24/2019, 3:08 PM
    Всем привет! Никто не подскажет, я могу на Kotlin такую же проверку написать?
    public interface Handler<C extends MessageContext> 
    ...
    Method method = ...;
    if (method.getParameters()[0].getType().equals(Handler[].class)) <--- ???
    • 1
    • 1
  • l

    lewik

    01/25/2019, 12:40 PM
    У меня с алгоритмами тяжеловато... У меня есть некая электро сеть, состоящая из похожих элементов: линия - устройство - линия - устройство - линия - устройство - линия - устройство. На устройстве это может ветвиться. В принципе, у этих объектов есть общий интерфейс. Часто надо броить по этому дереву, или находить что то в нем. Например крайние точки. Или вычитать дерево одно дерево из другого. Может есть какой то готовый инструмент для работы с такими "списками"? Я велик с tailrec написал конечно. Но.. это ж велик.
    v
    a
    g
    • 4
    • 3
  • p

    pugnator

    01/25/2019, 7:46 PM
    всем привет как сделать двойное нажатие? есть обработчик или надо писать функцию?
    :stackoverflow: 1
    m
    • 2
    • 1
  • p

    pugnator

    01/26/2019, 7:47 AM
    хочу на webview повесить обработчик двойного клика чтобы показывать или закрывать меню, нужна ли для этого особенная функция? или есть обработчик двойного клика?
    g
    m
    • 3
    • 3
  • e

    Eugen Martynov

    01/28/2019, 10:02 AM
    следуете ли вы этому предложению?
    g
    g
    m
    • 4
    • 30
  • a

    amolkov

    02/04/2019, 9:32 AM
    Всем привет, при сборке проекта мавеном возникает ошибка
    [ERROR] Failed to execute goal org.jetbrains.kotlin:kotlin-maven-plugin:1.3.20:compile (compile) on project common: Plugin not found: spring: java.util.NoSuchElementException
    [ERROR] role: org.jetbrains.kotlin.maven.KotlinMavenPluginExtension
    [ERROR] roleHint: spring
    Сам плагин подключаю вот так
    <build>
            <sourceDirectory>src/main/kotlin</sourceDirectory>
            <testSourceDirectory>src/test/kotlin</testSourceDirectory>
    
            <plugins>
                <plugin>
                    <groupId>org.jetbrains.kotlin</groupId>
                    <artifactId>kotlin-maven-plugin</artifactId>
                    <version>${kotlin.version}</version>
                    <configuration>
                        <args>
                            <arg>-Xjsr305=strict</arg>
                        </args>
                        <compilerPlugins>
                            <plugin>spring</plugin>
                        </compilerPlugins>
                    </configuration>
                    <executions>
                        <execution>
                            <id>compile</id>
                            <goals>
                                <goal>compile</goal>
                            </goals>
                        </execution>
    
                        <execution>
                            <id>test-compile</id>
                            <goals>
                                <goal>test-compile</goal>
                            </goals>
                        </execution>
                    </executions>
                </plugin>
               ...
            </plugins>
        </build>
    В чем может быть проблема? Куда смотреть?
    i
    • 2
    • 2
  • e

    Eugen Martynov

    02/08/2019, 7:47 AM
    Вопрос по декомпилятору, можно ли увидеть декомпилированное тело метода из сторонней библиотеки?
    a
    • 2
    • 4
Powered by Linen
Title
e

Eugen Martynov

02/08/2019, 7:47 AM
Вопрос по декомпилятору, можно ли увидеть декомпилированное тело метода из сторонней библиотеки?
a

altavir

02/08/2019, 7:51 AM
В смысле?
Если есть байткод, то его можно декомпилировать. Если он обфускован каким-нибудь прогардом. то там будет каша
e

Eugen Martynov

02/08/2019, 8:36 AM
Нашел меню вверху файла
Decompile to Java
Спасибо!
View count: 5