设为首页收藏本站

最大的系统仿真与系统优化公益交流社区

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5325|回复: 1

[求助] 总是出现swarm.SignatureNotFoundException错误

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! W  r( @8 Y6 A8 }' ^

, f: f% m8 J4 H* P. m本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) r$ ?5 F# U& e以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.) W7 s- \# q" w/ V5 y7 J
swarm.SignatureNotFoundException
7 X6 P2 r+ J+ v5 g        at swarm.Selector.<init>(Selector.java:76)
: N4 }/ r1 G; s2 R        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
: G8 p7 {. }8 |; W$ G' o        at ActionGroupDemo.main(ActionGroupDemo.java:67)% V/ u+ f& N( o) {1 l; S0 f

9 t- L- z! S. K" w) L$ ~
/ N6 |9 Q# P% `3 ^2 @# Bimport swarm.objectbase.SwarmImpl;. f! n: r6 M+ V8 i& X; L
import swarm.objectbase.Swarm;1 \" b7 W4 E4 c( c6 G5 d/ G6 c; Q
import swarm.activity.ScheduleImpl;
9 ]! T8 n& G. F5 a+ C* b' ]import swarm.activity.Activity;
3 ]9 H+ l; L2 y# [import swarm.activity.ActionGroupImpl;
5 l9 g" j; b( m; i* a+ [( e/ Yimport swarm.collections.ListImpl;) l, l1 E# T& L  G0 N
import swarm.defobj.Zone;
# O2 m/ ?5 w3 rimport swarm.Globals;7 J& m: }4 J6 M/ M
import swarm.Selector;8 x3 q; k2 |! Z6 Z9 ]3 y! x
import swarm.activity.ActionGroup; / M8 S5 z* P' U  }8 Y2 z( o
class Agent {, d7 Y4 t* P5 w) P: P3 I$ n1 s
        char id;1 N; E, k# J( h8 B3 r, ]  `

' |2 ?+ n- n0 S8 v7 I        Agent(char id) {
- H) J& E3 i% C3 T7 ]# m; n                this.id = id;
# x  G, X3 l2 ^. G, \- h5 J+ g        }* w3 U3 I# I  [  n0 f; f% F
1 b) ]& |/ P+ K
        public void agentStep() {' u# d: R7 q  g
                System.out.println(id + ":" + Globals.env.getCurrentTime());5 x3 d+ J8 d# \7 Y  J
        }
4 ~5 J4 c% S# e8 _4 D+ L}
( ]8 c+ J/ n: x3 O9 Z* g  i: @4 g1 l5 G& o. z0 i2 o& S% t, d3 c; G
public class ActionGroupDemo extends SwarmImpl {# w! `& p; c: R3 j$ v, ]% _
        ScheduleImpl schedule;
9 V0 R1 t7 O% z+ t. ?        ActionGroupImpl actionGroup;% Z- J  ^3 [% }& \" H. X' p
        ListImpl list;" `8 y/ j, v! B) m
        char Id = 'a';
, ?' V! `1 I7 `5 b# s2 o5 J
0 Y. K0 ]9 U( L  _; s' B  S1 t        ActionGroupDemo(Zone aZone) {2 z: h/ S8 b. M+ C3 h: r
                super(aZone);
3 I* u  v- G, B6 N' T/ D! v& c                list = new ListImpl(aZone);
$ l- b- c0 y! k8 @                swarmSetp();
3 V* i- s  d1 U. L/ b; Q! F                actionGroup = new ActionGroupImpl(aZone);
0 S$ n5 e& m7 g3 S8 J                schedule = new ScheduleImpl(aZone);
! a6 t/ E7 z* R5 F% G* ?6 ]                try {7 ~' K* _2 Q) d- _+ }! V2 Y. `) V
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);0 Z# v8 W$ |$ u  v
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
' @4 h& A% s, M- B. G                        
* u# O# V) I) u. L3 l# o& }( F- _                        actionGroup.createActionForEach$message(list, agentSel);
' W+ a3 L: f- w# V3 T- A                        actionGroup.createActionTo$message(this, swarmSel);! R0 }9 y( C- w) }. p! u
                        schedule.at$createAction(0, actionGroup);
$ L1 T6 t% M4 @9 T8 [                        schedule.at$createAction(1, actionGroup);7 b* t7 g. ?6 y2 `. W4 s
                        schedule.at$createAction(2, actionGroup);. S! C/ K4 U7 m7 R+ @4 s% s

# V) X" r1 J  |3 n                } catch (Exception e) {* H* ^0 R2 B. |( _* J. m* X
                        e.printStackTrace(System.err);8 }7 Q  _1 P) ~! k7 s
                        //System.out.println(e);0 r3 f: E% H+ F. U, b1 _
                        System.exit(1);
/ ?" Y# P$ k/ C- |) B8 ?                }
; X9 e) v+ x, v+ y6 i; `; R* t  Q5 z* @- v" [) a# l
. T/ {1 E2 U5 v$ N
        }% L4 S% ^3 K5 Y% V: m/ E

; D1 D9 Q2 m; p$ p        private void swarmSetp() {
. K6 l/ `( B' u0 }; H! v                list.addLast(new Agent(Id));: x5 m  t/ n3 d4 [
                Id++;" j. z6 i/ v& j% C' [5 J/ Q, r: W
        }
4 @& z9 X% H* S6 z* R2 i  ^. k/ [
, O4 Z& g! u$ ]8 |5 A4 E% V        public Activity activateIn(Swarm context) {
' i9 }5 A! Z8 X' a5 d. Y0 w% g                super.activateIn(context);
+ F1 p+ c' g- K1 g' `& h2 `                schedule.activateIn(this);
0 O9 N4 P3 q/ m8 k# p. D                return getActivity();2 U; P! Q% ]' S+ R  y* D
        }0 F; y* F; T% G6 N& B8 T" k% h9 H

) e0 C3 Z' l4 b! k- q        public static void main(String[] args) {! m/ T, D6 t0 \6 X4 g
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);1 W$ w' Z- E* @) O2 D2 p- D
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 T0 K3 n4 b/ y( q5 ]% K
                swarms.buildObjects();
# O' _  }+ Q% O7 }( s                swarms.buildActions();' }9 _9 M' |+ ?6 Z
                swarms.activateIn(null).run();
  H& i0 \7 g* G' b2 M        }. p4 l6 P# v4 P; B) r* E
2 |' B0 j& H% r2 Z; \2 g) G4 {$ Z
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|SimulWay 道于仿真   

GMT+8, 2025-12-4 07:54 , Processed in 0.037822 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表