Problem beim Rendern der Hugo / Blogdown-Site

Oct 23 2020

Ich habe den Beitrag über die blogdown::serve_site()Nicht-Bereitstellung der Website gesehen und die Versionshinweise für Blogdown 0.21 gelesen, aber er hat bei meinem Problem nicht geholfen.

Mein Workflow besteht darin, einen Beitrag zu schreiben, dann in RStudio auf "Site bereitstellen" zu klicken und die neu generierten Dateien im öffentlichen Ordner meines Projekts zu überprüfen. Ich habe einen symbolischen Link zu diesem Ordner in meinem ShinyApps-Verzeichnis, damit ich meine Site über den Shiny-Server anzeigen kann. Das ist großartig, denn dann können meine Kollegen, die auch den Server verwenden, auch meine Website sehen.
Das funktioniert jetzt nicht mehr. Während ich die aktualisierte Site direkt in RStudio erhalte, werden die vom Shiny-Server angezeigten Dateien nicht aktualisiert. Die einzige Erklärung, die ich finden kann, ist diese:

Die globale Option blogdown.generator.server ist veraltet. Jetzt verwendet blogdown :: serve_site () immer den Hugo-Server (der den Optionen (blogdown.generator.server = TRUE) in der vorherigen Version von blogdown entspricht) anstelle des Servers, der über das servr-Paket erstellt wurde (das den Standardoptionen entspricht ( blogdown.generator.server = FALSE) vor).

Ich weiß nicht viel über Hugo, aber ich habe festgestellt, dass hugo serverdas Verzeichnis public / nicht aktualisiert wird. Ist das richtig? Was kann ich jetzt tun, um das zu aktualisieren?

Antworten

1 Lilith-Elina Oct 26 2020 at 17:51

Die Frage wurde bereits auf GitHub beantwortet : Ich muss die Seite mit erstellen blogdown::build_site(local=TRUE).

1 Frederick Nov 13 2020 at 22:02

Bearbeiten: Es stellt sich heraus, dass das Folgende auch für mich nicht die Lösung war. Daher habe ich eine eigene Frage mit einer möglichen Problemumgehung gestellt:

Problem (und Lösung?) Beim Rendern der Hugo / Blogdown-Site


Früherer (alter) Beitrag:

Bei mir hat das nicht geholfen. Beim Aktualisieren von Blogdown und Starten meines R-Projekts wird es blogdown:::preview_site(startup = TRUE)automatisch ausgeführt. Etwas, an das ich mich von früheren Start-ups nicht erinnere. Ich erhalte jetzt immer die gleiche Fehlermeldung:

Starten des Servers über den Befehl: hugo server --bind 127.0.0.1 -p 4321 --themesDir Themen -t hugo-akademisch -D -F --navigateToChanged sh: Zeile 0: kill: (3262) - Kein solcher Prozess Fehler: Das Starten des Servers dauerte mehr als 30 Sekunden. Möglicherweise stimmt etwas nicht. Der Prozess wurde beendet. Wenn die Site mehr Zeit zum Erstellen und Starten benötigt, setzen Sie die Optionen (blogdown.server.timeout) auf einen größeren Wert.

Das Ausführen blogdown::build_site(local = TRUE)führt zu einer noch längeren Fehlermeldung, beginnend mit:

FEHLER 2020/11/13 15:55:56 Rendern von "Seite" fehlgeschlagen: Ausführung der Vorlage fehlgeschlagen: Vorlage: _default / single.html: 6: 5: Ausführen von "_default / single.html" bei <partiell "page_header.html ".>: Fehler beim Aufrufen von Partial: Ausführung der Vorlage fehlgeschlagen: Template: Partials / page_header.html: 92: 7: Ausführen von" partials / page_header.html "bei <Partial" page_metadata "(dikt" page "$ page" is_list "0 "share" true)>: Fehler beim teilweisen Aufrufen: "/Users/frederick/Dropbox/EUR/R_work/r_website/r_website_project/themes/hugo-academic/layouts/partials/page_metadata.html:63:31": Ausführung der Vorlage fehlgeschlagen : template: partials / page_metadata.html: 63: 31: Ausführen von "partials / page_metadata.html" in <.>: range kann nicht über R iterieren


Lösung für mich
Für mich hat es geholfen, ein Rollback auf die Blogdown- Version 0.20wie folgt durchzuführen :

packageVersion("blogdown")
#> [1] '0.21'

library("devtools")
#> Loading required package: usethis
install_version("blogdown", version = "0.20", repos = "http://cran.us.r-project.org")
#> Downloading package from url: http://cran.us.r-project.org/src/contrib/Archive/blogdown/blogdown_0.20.tar.gz

packageVersion("blogdown")
#> [1] '0.20'

Erstellt am 2020-11-13 durch das reprex-Paket (v0.3.0)

Jetzt ist alles wieder "normal".