设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12118|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 # r9 y6 v& T/ w% w# I2 S: h
& f& s# M) F6 A) j: v
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21) O2 {. X1 x% L% L& k/ w1 [0 {
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
# E5 U, o% K# r. p1 o, t* }swarm.SignatureNotFoundException2 {3 H, o6 Q  C0 |) l" Y/ r
        at swarm.Selector.<init>(Selector.java:76)" h9 ?( k/ f2 j& t3 ^3 z6 c. w3 ~
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
9 |, O# p( a: K( J( T7 T" `' m        at ActionGroupDemo.main(ActionGroupDemo.java:67)  E- v5 z( ^4 E" ~$ {, X5 t1 K
+ H/ m& N' @: s% F

7 V/ l8 l# ^( [" Timport swarm.objectbase.SwarmImpl;" Y! H' D8 ~# Y" D" E: q% N
import swarm.objectbase.Swarm;
' F# p: F! J0 ]6 S! uimport swarm.activity.ScheduleImpl;
8 v# A. V6 U4 Z; a( r  K: Gimport swarm.activity.Activity;0 ]2 V% e% m% k: G4 R
import swarm.activity.ActionGroupImpl;0 e- ^  ]$ a+ B6 A0 m
import swarm.collections.ListImpl;4 W1 @  ^% r6 i" `% g* a
import swarm.defobj.Zone;
8 [. f- u: C* l, E7 R- b6 Gimport swarm.Globals;
0 H. e" x3 k2 l7 ?9 Mimport swarm.Selector;
- @: t2 @. R2 v! }1 kimport swarm.activity.ActionGroup;
6 D- _$ \% e* Vclass Agent {: M2 A4 ~6 c% L* ]+ ?- D
        char id;# ~3 d: D  S) x/ J; s. u4 `+ T' L  a4 Z

& T, }, N0 {3 p1 F. A+ d        Agent(char id) {
7 l. z0 t- B, U5 B$ {! _, s                this.id = id;8 b4 ?' D+ O. ~5 o6 L+ t
        }
6 d- S& b$ a4 r5 M' \0 m2 T
9 J% A, I; @0 v        public void agentStep() {
* k2 V4 W* L! {) B9 _                System.out.println(id + ":" + Globals.env.getCurrentTime());
# O, V, P# i; t/ H  ^5 h9 |        }/ z; V# O9 M! x. R  K
}
4 ^& _! o& u$ m0 p7 i
6 y' d& A) ]" I& a3 t# l. ipublic class ActionGroupDemo extends SwarmImpl {
! o# i$ b+ R# z6 p; P3 y* P        ScheduleImpl schedule;% o7 P3 P. C8 s( M7 H
        ActionGroupImpl actionGroup;, u$ o# f9 S4 B0 _) v
        ListImpl list;5 t/ t4 _% ^) a) V
        char Id = 'a';
0 |2 p4 S" z0 _5 x! |* U% F) ]1 v
        ActionGroupDemo(Zone aZone) {
3 g: T- z% U2 E0 y                super(aZone);) l9 j. A* F$ M5 F
                list = new ListImpl(aZone);
1 q  ~! c1 B8 E4 N6 q! M% {                swarmSetp();
* o" Y- D( Q1 l5 {                actionGroup = new ActionGroupImpl(aZone);
) ?6 J( [( D6 G: s3 O) Q1 w& |4 Q                schedule = new ScheduleImpl(aZone);
2 p& v, A. C9 L                try {
: ]4 b3 i) S& S: R% w! w8 c                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
9 b' R  K# Z$ {7 [1 _) G/ H                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行7 S8 R* j) W* l$ n
                        
7 p0 V% f. t4 p3 x                        actionGroup.createActionForEach$message(list, agentSel);- k" S& x5 ]' |1 a) S
                        actionGroup.createActionTo$message(this, swarmSel);7 S; Z( ~% U# L) _- y
                        schedule.at$createAction(0, actionGroup);
. Y+ i0 q  f" r1 L4 a8 I! O                        schedule.at$createAction(1, actionGroup);
+ D  W; J, i" E+ Q+ j, X                        schedule.at$createAction(2, actionGroup);
- _; N& F. D# g" n; G  W( g
" P) t6 e$ p% p* a1 j                } catch (Exception e) {5 q) ?7 T: l& S8 |, z( ^
                        e.printStackTrace(System.err);
9 [2 [8 [; k1 p                        //System.out.println(e);
# j! ?; A5 y" l8 p+ G                        System.exit(1);
( T( j8 P# O3 F  F8 u% g& {9 @                }
' S& `0 d6 g2 @3 p$ S# Y, H, [8 K
) W  z4 n6 r: Q/ K6 |& l6 m
% u9 c) o* C+ ^5 i4 l9 p( @) K        }
) @$ E; b0 j" m
1 F/ p) A% p/ H. N+ Z        private void swarmSetp() {8 [# L5 q. \3 f" O9 T1 g
                list.addLast(new Agent(Id));
) Y* c9 G( q# k2 Y                Id++;
7 X& J1 q% R2 j( J; G        }
3 K9 v: K; [( V9 f; I
) N4 s8 j1 U/ g3 G6 I0 z' ^        public Activity activateIn(Swarm context) {
# y: h2 `* E2 _  H+ {                super.activateIn(context);7 |. G8 q  J* c
                schedule.activateIn(this);  _  Q- S, t8 D. U, m% _
                return getActivity();8 p- T7 Y. d2 n. k; j7 }% Q  N
        }
7 t# x6 Q$ i" e, d
6 y* L3 F" y* j        public static void main(String[] args) {
/ l8 I9 y! f- n                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
9 C- \# V% A( h' i* f& i0 L                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
: k2 g& i$ ?: x  a, L6 P                swarms.buildObjects();
- E6 D8 b2 D" J! [+ t' u1 p" S7 P3 Z                swarms.buildActions();2 |; i7 [4 J% v2 j
                swarms.activateIn(null).run();) v5 g0 q- f' V# u* @
        }5 w; }4 B5 ^6 H8 z; K: N, Y) C2 S

- p) X" m( Y3 @/ W' ~" C# v}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-7-30 22:51 , Processed in 0.014918 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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