设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9916|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 r% u. `/ _  k5 }

2 l& `2 E' A+ }0 `) w; K本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
& U* X7 t1 \/ p& y. ^9 O& d以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.1 |2 c6 w% ^! c  @0 i1 C5 N
swarm.SignatureNotFoundException
$ X1 o& |8 N# _% c- E        at swarm.Selector.<init>(Selector.java:76)" F  t- L8 B' l( o7 ~% ~
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
% `2 n8 a% }0 j% \4 D& A        at ActionGroupDemo.main(ActionGroupDemo.java:67)) H9 E) S  C. [) P- B& w
( \) D$ t- _# t/ z+ o+ M; S' s
: Z7 t4 a& `* |/ u
import swarm.objectbase.SwarmImpl;
. }* j# l, b0 R& limport swarm.objectbase.Swarm;
9 s3 O9 v, r4 Z  Jimport swarm.activity.ScheduleImpl;  n+ S+ `" x' L
import swarm.activity.Activity;9 m; i+ X5 K2 r3 N0 F& u
import swarm.activity.ActionGroupImpl;
4 Y" U3 Y+ T3 y# {& Uimport swarm.collections.ListImpl;
9 r* k6 {; `4 P8 |import swarm.defobj.Zone;
9 V$ M5 L; d0 T6 E+ N) c; @- i8 Y9 \import swarm.Globals;
/ v% h6 e$ G$ O  X9 S$ _2 Zimport swarm.Selector;
% O/ v2 V5 r  I5 v4 V4 ]import swarm.activity.ActionGroup; 2 n) ?2 D3 s" T8 ~: G/ C5 g
class Agent {$ a$ C; p9 Z7 y
        char id;
- T. G8 V( `7 S8 M1 Q  k5 A: V  j
        Agent(char id) {6 |$ m+ e8 t" _8 ^' n  B; Y
                this.id = id;1 D6 K3 q+ e: J
        }+ L- G( {: t; b: p! v% C" P  n' A" e1 _) A

2 N4 E# A' E% Y        public void agentStep() {
. x* Y$ J# |* w                System.out.println(id + ":" + Globals.env.getCurrentTime());
% m/ D1 j5 }8 W: y$ [' U9 ^        }! U: h8 i+ i1 W( t2 `" i0 J" V
}
! c/ M/ F0 ]8 i$ b$ M+ n7 \" u, O! z5 r- U8 |8 A5 P
public class ActionGroupDemo extends SwarmImpl {) b6 v1 C" Y$ W
        ScheduleImpl schedule;  P7 l7 s8 Y% k) ~; z# ]
        ActionGroupImpl actionGroup;
! Q  M" p6 f9 {  `2 I% J* Y        ListImpl list;
6 ]9 h; [$ E& V$ m9 g% `: U/ U- o5 x        char Id = 'a';7 N& d2 g5 r, y" A2 K& P8 {$ y

6 {) Y0 }0 w9 `2 q4 _. D* X        ActionGroupDemo(Zone aZone) {5 r7 A, P0 J7 A- J. g  X6 n
                super(aZone);
; I/ p5 @1 A+ K4 r3 x4 B' {6 e                list = new ListImpl(aZone);
1 O9 l' Y: z2 }& K: ~8 w                swarmSetp();
+ n/ q5 ~) G) w0 _                actionGroup = new ActionGroupImpl(aZone);
7 X6 ]  [% O& J                schedule = new ScheduleImpl(aZone);6 @# P; `  y6 o" T/ [# X* R! n9 `
                try {1 A% d3 ]: v: `4 }: u8 Y! \
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);* R! }: \( m: U/ v* @9 _- ^
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
5 ]  k5 d; M9 c4 u# \, @                        
+ r# U: Q0 t' z* _3 v9 q0 t' |& o                        actionGroup.createActionForEach$message(list, agentSel);  m5 l3 {8 F# M! j4 a( q
                        actionGroup.createActionTo$message(this, swarmSel);
1 C" U' y, q2 {6 Q: y" Z                        schedule.at$createAction(0, actionGroup);
6 ]4 a0 l- k- T& ]* s                        schedule.at$createAction(1, actionGroup);5 \. Q; s. U5 ?# u
                        schedule.at$createAction(2, actionGroup);
' S* k4 r- U( y5 ^  E$ j
  j3 y) u, E: O  H( R* Q7 O% n( S                } catch (Exception e) {6 D0 d9 m4 Q& Z+ {: U* V3 O
                        e.printStackTrace(System.err);
$ Z  y9 I: l4 L& M; b  v                        //System.out.println(e);2 Z  R4 [) o1 z* ?( B6 c' ?
                        System.exit(1);4 d1 t* L7 d8 y/ J: u; y' s
                }
! j' F2 E5 r0 O5 ^  M' D7 v# e, x; f( b; ]  {1 Z1 J/ h
" e. ]- O' u- y2 f
        }; e* @# R9 E/ }' S" [' T) [: \/ C

* j6 ^* G) n$ M! b2 \. ?0 V        private void swarmSetp() {
0 t0 P7 n- R. Z# z0 L6 ^                list.addLast(new Agent(Id));7 `- T! L2 G% H2 h5 W- n. u, }
                Id++;
6 q% ^5 x# o" s: K4 y+ C1 d8 K        }$ S3 y9 D& W' y( b" W, T/ T
- W- ?+ A7 b1 h1 `6 \% y
        public Activity activateIn(Swarm context) {8 B) T# @0 O* R% p$ U
                super.activateIn(context);/ R4 R5 c1 z1 d4 S7 z) r) M% S/ N# \
                schedule.activateIn(this);
; N9 Z  S. X" s, d7 e                return getActivity();3 W8 o, O/ T6 b- H* O: \# {+ c! K
        }
. B( v& H1 \1 \# I2 a
/ C* x3 I. e& D' A  A, G' l: q        public static void main(String[] args) {
. t/ B# k0 g! G+ a: g7 T9 T                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
; G, V2 I3 y/ T8 l4 i                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
, @6 y) d" C7 B8 s0 W$ k# j                swarms.buildObjects();
9 a+ d5 r( E" L  ^& B. r7 r5 p                swarms.buildActions();
6 u% L2 l, w; \4 ~7 Z: I- c                swarms.activateIn(null).run();
' f6 X" }; s9 L        }, O: m; M: f9 h+ f# C
0 X1 n% z) }! l+ \) }0 F, j* j2 h
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-27 14:55 , Processed in 0.016377 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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