Search Issue Tracker

Fixed in 4.5.1

Votes

0

Found in

4.5.0f4

Issue ID

609123

Regression

No

[WP8] Unity Engine references in a plugin stop building

WP8

-

To reproduce:
1. Open attached project "UnityProject". It contains a plugin that has a few Unity Engine references
2. Build the project for WP8
3. Errors are thrown:
" Error building Player: Exception: Failed to run serialization weaver with command line "Temp/StagingArea/Data/Managed\MarkerMetro.Unity.WinIntegration.dll" -pdb -verbose -unity-engine=Temp/StagingArea/Data/Managed/UnityEngine.dll "Temp/StagingArea/TempSerializationWeaver".[Temp/StagingArea/Data/Managed\MarkerMetro.Unity.WinIntegration.dll]
Symbols will be read from Temp/StagingArea/Data/Managed/UnityEngine.pdb
Weaving assembly C:\Users\roberto.c\Projects\WinIntegration\bug_repro\UnityProject\Temp\StagingArea\Data\Managed\MarkerMetro.Unity.WinIntegration.dll
No symbols for Temp/StagingArea/Data/Managed\MarkerMetro.Unity.WinIntegration.dll
Mono.Cecil.ResolutionException: Failed to resolve System.Action
at Unity.CecilTools.Extensions.ResolutionExtensions.Resolve[TReference,TDefinition](TReference reference, Func`2 resolve)
at Unity.CecilTools.Extensions.TypeReferenceExtensions.IsAssignableTo(TypeReference typeRef, String typeName)
at Unity.SerializationLogic.UnitySerializationLogic.IsTypeSerializable(TypeReference typeReference)
at Unity.SerializationLogic.UnitySerializationLogic.IsFieldTypeSerializable(TypeReference typeReference)
at Unity.SerializationLogic.UnitySerializationLogic.WillUnitySerialize(FieldDefinition fieldDefinition, TypeResolver typeResolver)
at System.Linq.Enumerable.<>c__DisplayClassf`1.<CombinePredicates>b__e(TSource x)
at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
at Unity.Serialization.Weaver.MethodEmitterBase.EmitMethodBody()
at Unity.Serialization.Weaver.SerializationWeaver.AddSerializeMethod()
at Unity.Serialization.Weaver.SerializationWeaver.Weave()
at usw.Weaver.WeaveAssembly(String assemblyPath, AssemblyDefinition unityEngineAssemblyDefinition)
at usw.Weaver.Weave()
at usw.Program.RunProgram(ConversionOptions options)
at usw.Program.Main(String[] args)"

You can workaround this by using delegates for problematic areas (in this example it's on "System.Action")

Comments (3)

  1. sirius_black9999

    Oct 13, 2015 15:03

    using unity 5.2.0f3:

    Error building Player: UnityException: Failed to run serialization weaver with command "Temp\StagingArea\BW-25 dashCam.Windows\Data\Managed\ZedGraph.dll" -pdb -verbose -unity-engine="Temp\StagingArea\BW-25 dashCam.Windows\Data\Managed\UnityEngine.dll" "Temp\StagingArea\BW-25 dashCam.Windows\TempSerializationWeaver" -additionalAssemblyPath="C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\.NETCore\v4.5.1".
    Symbols will be read from Temp\StagingArea\BW-25 dashCam.Windows\Data\Managed\UnityEngine.pdb
    Weaving assembly C:\Users\sirius\Documents\ProDnD\BW-25 dashCam\Temp\StagingArea\BW-25 dashCam.Windows\Data\Managed\ZedGraph.dll
    No symbols for Temp\StagingArea\BW-25 dashCam.Windows\Data\Managed\ZedGraph.dll
    + ZedGraph.YAxisList
    + ZedGraph.PointPairBase
    + ZedGraph.PointPair
    + ZedGraph.StockPt
    + ZedGraph.GraphObj
    + ZedGraph.CurveList
    + ZedGraph.RadarPointList
    + ZedGraph.LineBase
    + ZedGraph.GraphObjList
    + ZedGraph.Label
    + ZedGraph.GapLabel
    + ZedGraph.Chart
    + ZedGraph.CurveItem
    + ZedGraph.OHLCBarItem
    + ZedGraph.Scale
    + ZedGraph.MinorGrid
    + ZedGraph.Location
    + ZedGraph.OHLCBar
    + ZedGraph.JapaneseCandleStick
    + ZedGraph.Y2AxisList
    + ZedGraph.MasterPane
    System.Exception: Exception while processing System.Drawing.Drawing2D.GraphicsPath System.Drawing.Drawing2D.GraphicsPath ZedGraph.GasGaugeRegion::_slicePath, error Failed to resolve System.MarshalByRefObject
    at Unity.Serialization.Weaver.MethodEmitterBase.WillUnitySerialize(FieldDefinition fieldDefinition)
    at Unity.Serialization.Weaver.SerializeMethodEmitter.ShouldProcess(FieldDefinition fieldDefinition)
    at System.Linq.Enumerable.<>c__DisplayClass0`1.<CombinePredicates>b__1(TSource x)
    at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
    at Unity.Serialization.Weaver.MethodEmitterBase.EmitMethodBody()
    at Unity.Serialization.Weaver.SerializeMethodEmitter.SerializeMethodDefinitionFor(TypeDefinition typeDef, SerializationBridgeProvider serializationBridgeProvider)
    at Unity.Serialization.Weaver.SerializationWeaver.AddSerializeMethod()
    at Unity.Serialization.Weaver.SerializationWeaver.Weave()
    at usw.Weaver.WeaveAssembly(String assemblyPath, AssemblyDefinition unityEngineAssemblyDefinition)
    at usw.Weaver.Weave()
    at usw.Program.RunProgram(ConversionOptions options)
    at usw.Program.Main(String[] args)

  2. KevinCodes4Food

    Aug 21, 2014 21:57

    I managed to fix the issue, which I encountered on 4.5.3f3 building for Windows 8 Store.

    First, I tried building for WP8, and encounter an error due to a use of StreamReader with a string constructor, which is not supported for the platform. That gave me an idea...

    I switched back to W8, and my Player Settings -> Publishing Settings -> Compilation Settings were either "None" or "Use Net Core Partially". I done this a while back due to issues I had with a plug-in earlier in testing. Setting this field to "Use Net Core" and building revealed a bunch of errors with code using incompatible interfaces with Windows Store .NET Framework. These included the StreamRead issue above, and using XmlDocument.SelectNodes() and System.Array.AsReadOnly().

    So I updated to code to not use those incompatible interfaces - and the error is gone! With the removal from our code of the 3 unsupported Windows Phone and Windows 8 interfaces, the problem was completely eliminated.

    It would be nice if these errors could be displayed during editor Unity runs when the platform is selected, rather than just at player build time, but at least this cleared the error.

  3. Harry Nguyen OGAY

    Jul 25, 2014 10:59

    i have same prolem with unity Version 4.5.2f1.
    Error building Player: Exception: Failed to run serialization weaver with command line "Temp\StagingArea\Data\Managed\Assembly-CSharp.dll" -pdb -verbose -unity-engine=Temp\StagingArea\Data\Managed\UnityEngine.dll "Temp\StagingArea\TempSerializationWeaver".[Temp\StagingArea\Data\Managed\Assembly-CSharp.dll]
    Symbols will be read from Temp\StagingArea\Data\Managed\UnityEngine.pdb
    Weaving assembly D:\Unity\Project\DeadTarget\Defense\Temp\StagingArea\Data\Managed\Assembly-CSharp.dll
    Symbols will be read from Temp\StagingArea\Data\Managed\Assembly-CSharp.dll.mdb
    + GMonoBehaviour
    + SkinnedMeshPart
    + FastColliderNode
    + FastCollider
    + HUDFPS
    + ServerHost
    + HttpClient
    + MAPHUDFPS
    + LanguageSelection
    + UIButton
    + UIButtonActivate
    + UIButtonColor
    + UIButtonKeys
    + UIButtonMessage
    + UIButtonOffset
    + UIButtonRotation
    + UIButtonScale
    + UICenterOnChild
    + UICenterOnClick
    + UIDragCamera
    + UIDragDropContainer
    + UIDragDropItem
    + UIDragDropRoot
    + UIDragObject
    + UIDragResize
    + UIDragScrollView
    + UIDraggableCamera
    + UIEventTrigger
    + UIForwardEvents
    + UIGrid
    + UIImageButton
    + UIKeyBinding
    + UIKeyNavigation
    + UIPlayAnimation
    + UIPlaySound
    + UIPlayTween
    + UIPopupList
    + UIProgressBar
    + UISavedOption
    + UIScrollBar
    + UIScrollView
    + UISlider
    + UISoundVolume
    + UITable
    + UIToggle
    + UIToggledComponents
    + UIToggledObjects
    + UIWidgetContainer
    + UIWrapContent
    + ActiveAnimation
    + BMFont
    + BMGlyph
    + BMSymbol
    + EventDelegate/Parameter
    + EventDelegate
    + NGUIDebug
    + PropertyBinding
    + PropertyReference
    + RealTime
    + SpringPanel
    + UIBasicSprite
    + UIDrawCall
    + UIEventListener
    + UIRect/AnchorPoint
    + UIRect
    + UISnapshotPoint
    + UIWidget
    + AnimatedAlpha
    + AnimatedColor
    + SpringPosition
    + TweenAlpha
    + TweenCallFunction
    + TweenColor
    + TweenFOV
    + TweenHeight
    + TweenNumber
    + TweenOrthoSize
    + TweenPosition
    + TweenRotation
    + TweenScale
    + TweenTextMatrix
    + TweenTransform
    + TweenVolume
    + TweenWidth
    + UITweener
    + UI2DSprite
    + UI2DSpriteAnimation
    + UIAnchor
    + UIAtlas/Sprite
    + UIAtlas
    + UICamera
    + UIFont
    + UIInput
    + UILabel
    + UILocalize
    + UIOrthoCamera
    + UIPanel
    + UIRoot
    + UISprite
    + UISpriteAnimation
    + UISpriteData
    + UIStretch
    + UITextList
    + UITexture
    + UITooltip
    + UIViewport
    + PreRuntimePoolItem
    + SpawnPool
    + PrefabPool
    + CreationExample
    + ReallySimpleParticleSpawner
    + SimpleSpawner
    + SplineAnimator
    + SplineAnimatorCamera
    + SplineAnimatorClosestPoint
    + SplineAnimatorGravity
    + YAnimator
    + Spline
    + SplineControlNode
    + SplineMesh
    + RandomizeColor
    + TransitionManager
    + CopyTransform
    + InteractiveConsole
    + Explorer
    + Facebook.AndroidFacebook
    + Facebook.AndroidFacebookLoader
    + Facebook.CanvasFacebookLoader
    + Facebook.EditorFacebook
    + EditorFacebookAccessToken
    + Facebook.EditorFacebookLoader
    + FB/RemoteFacebookLoader
    + FB/CompiledFacebookLoader
    + FB
    + FBSettings
    + Facebook.IOSFacebook
    + Facebook.IOSFacebookLoader
    + GooglePlayGames.OurUtils.PlayGamesHelperObject
    + HOTweenDemoBrain
    + ABSHOTweenEditorElement
    + HOTweenComponent
    + HOTweenManager/HOTweenData
    + HOTweenManager/HOPropData
    + HOTweenManager
    + MainBasic
    + MainSettings
    + RandomSpin
    + DProject.SC_EF_LoadEF_01
    + BoTextureDu/reloadTexture
    + BoTextureDu
    + Eff_BeShot_01
    + Eff_BulletHitGround_01
    + Eff_BulletHitGround_02
    + Eff_BulletHitWall
    + Eff_BulletHitWall_01
    + Eff_BulletHitWall_02
    + Eff_BulletTrail
    + GD_IE_RadialBlurFilter
    + ParNumControler
    + ParticleEffects
    + SC_EF_DisWakeUp_01
    + SC_EF_LightAnim_01
    + SC_EF_LoadEF_01
    + SC_EF_ShellEF_01
    + SEF_PlayerBehit_01
    + ThuCaiviTri
    + DProject.AnimationInfo
    + DProject.AnimConst
    + SoundProcssBar
    + DProject.AnimatorEventLayer
    + DProject.AnimatorEvents
    + DProject.GrenadesController
    + speedController
    + DestroyIgnoreTimeScale
    + DestroyThisTimed
    + DProject.EffectPoolManager
    + EnvHitEff
    + MyRotation
    + MyTrail
    + PosEffOnGun
    + ZombieDissolve
    + playEF
    + DProject.Equipment
    + DProject.ShieldEquipment
    + CrawlRouteManager
    + FlyRouteManager
    + DProject.Gameplay
    + GiftRouteManager
    + HoleManager
    + DProject.TargetPositionZombie
    + DProject.ZombiePlacement
    + AchievementItem
    + GuiAchievementEvent
    + GuiAchievementEventController
    + DProject.BattleEquip
    + DProject.EquippedBoostControl
    + DProject.InventoryBoostControl
    + MyProgressBar
    + SortingLayerName
    Mono.Cecil.ResolutionException: Failed to resolve System.Action
    at Unity.CecilTools.Extensions.ResolutionExtensions.Resolve[TReference,TDefinition](TReference reference, Func`2 resolve)
    at Unity.CecilTools.Extensions.TypeReferenceExtensions.IsAssignableTo(TypeReference typeRef, String typeName)
    at Unity.SerializationLogic.UnitySerializationLogic.IsTypeSerializable(TypeReference typeReference)
    at Unity.SerializationLogic.UnitySerializationLogic.IsFieldTypeSerializable(TypeReference typeReference)
    at Unity.SerializationLogic.UnitySerializationLogic.WillUnitySerialize(FieldDefinition fieldDefinition, TypeResolver typeResolver)
    at System.Linq.Enumerable.<>c__DisplayClassf`1.<CombinePredicates>b__e(TSource x)
    at System.Linq.Enumerable.WhereEnumerableIterator`1.MoveNext()
    at Unity.Serialization.Weaver.MethodEmitterBase.EmitMethodBody()
    at Unity.Serialization.Weaver.SerializationWeaver.AddSerializeMethod()
    at Unity.Serialization.Weaver.SerializationWeaver.Weave()
    at usw.Weaver.WeaveAssembly(String assemblyPath, AssemblyDefinition unityEngineAssemblyDefinition)
    at usw.Weaver.Weave()
    at usw.Program.RunProgram(ConversionOptions options)
    at usw.Program.Main(String[] args)

    Plese help me
    Thanks.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.