设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4202|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
; E5 }6 Z$ Y5 o9 f, A! q, u/ \- [/ }. }4 x% F8 O
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update217 K; C: O3 \7 L( s( V+ z
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
! Z0 Z2 g! l3 e( t/ {  c4 }/ wswarm.SignatureNotFoundException
+ q/ M# `! _7 M        at swarm.Selector.<init>(Selector.java:76)
: N  V; |# D& U        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)1 Q  k! s) g3 I  ?, U2 p, W
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
% }" s  s$ c* p8 W8 c) e: b
7 {5 @7 k3 u* i
, K# }; v! }1 N2 Dimport swarm.objectbase.SwarmImpl;0 k7 n0 A/ _9 T7 y# W* ]4 K2 ^
import swarm.objectbase.Swarm;6 e/ H  J! i6 w
import swarm.activity.ScheduleImpl;1 y7 a8 b: J- u, l# c
import swarm.activity.Activity;4 K/ Z4 H& u8 r$ C+ w  ~* N
import swarm.activity.ActionGroupImpl;
% g7 Q% T& t0 f7 ^# C( c- o# Wimport swarm.collections.ListImpl;7 e- R/ E' W8 F4 e" t% ]! L! Y
import swarm.defobj.Zone;
* X- B. G/ ?, U6 L6 B! w$ O1 Z: ^7 ximport swarm.Globals;
7 Z) I' z& g3 s2 m6 r4 Rimport swarm.Selector;4 x) n& I3 [0 s9 k; o) C2 l/ Z
import swarm.activity.ActionGroup; 6 N- x( E' h$ r1 s+ M' y- @6 U9 w
class Agent {2 k4 }7 B( l' V  }" ~! a
        char id;  O# W% N  Q& x

+ x. X+ s& i. X9 X/ I        Agent(char id) {
- J! V7 y$ R: X! ~3 k0 S/ {                this.id = id;
  X3 B. c2 b9 i1 G+ b: d# J        }, C! h$ r4 {0 M& p! W; \
$ i3 P! Y$ p- \+ S6 @3 s$ W" ?. N% ~. G
        public void agentStep() {
* f- H) N* P9 Z' G# C3 X1 u                System.out.println(id + ":" + Globals.env.getCurrentTime());' e3 k  H+ Y' k0 s, J8 o
        }
0 {* p+ E( o, Y% ?' s" x7 x}- }- J2 `2 \& p6 o2 z
5 T- D' ^6 A, c- q* l3 Z! H
public class ActionGroupDemo extends SwarmImpl {3 T! [+ `. O/ l+ S! i8 i
        ScheduleImpl schedule;
" t5 R7 X3 G! J* j5 x+ a% ^        ActionGroupImpl actionGroup;# H& \3 Z: h; D; b' f2 W
        ListImpl list;: S% c6 {8 ]8 e, F1 ~# b
        char Id = 'a';+ `5 T1 S: U) p1 M& i! ?: {

! A. k8 E5 O* }  s# L; Q/ v        ActionGroupDemo(Zone aZone) {, w' Y5 B; f% y7 `* q9 l
                super(aZone);* v/ T+ h- l7 e, G
                list = new ListImpl(aZone);4 b% O1 R+ e: `
                swarmSetp();
' T' S' U, F' c0 Z                actionGroup = new ActionGroupImpl(aZone);
- A. S, ~; v+ Q. B                schedule = new ScheduleImpl(aZone);2 U/ f9 R, R0 ]
                try {
5 ^1 l% d4 C; {7 ^) M4 E. t                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
0 P0 |/ A" l* e7 C                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行) C2 o6 B! t3 u$ }( c
                        . e" ~; F" ^2 D! R" I! Q4 F
                        actionGroup.createActionForEach$message(list, agentSel);
7 y/ h2 V9 W5 M- p* X- i                        actionGroup.createActionTo$message(this, swarmSel);
9 M9 R! X0 g& h; S' d                        schedule.at$createAction(0, actionGroup);
& O) h6 b! G6 z. a: y" I0 L                        schedule.at$createAction(1, actionGroup);1 {3 n" A$ o+ v" @. }& }
                        schedule.at$createAction(2, actionGroup);: l! K2 H: i# Z4 y  a
0 I  b3 c5 ~! L+ J5 \. u: E
                } catch (Exception e) {) s' v# k1 q% W# l9 j8 R2 c% e
                        e.printStackTrace(System.err);( I- n: r5 ^) q3 V+ J  T8 S1 {4 I7 j
                        //System.out.println(e);
! W: {( ^8 i- V7 N2 {                        System.exit(1);
+ O1 G' j6 K4 w# I( ~* j; a7 R                }
# h# a4 L$ S' W4 G# x/ U/ m( }% N
" d8 F2 x# K5 r/ a3 F4 S, g- s4 S1 J* \8 U; F! f' x
        }
3 ?' O2 u0 S# N
) y5 E9 }6 v- J        private void swarmSetp() {
/ N9 n- h( j  U* x. r8 R, L7 i6 T) s                list.addLast(new Agent(Id));3 q. W/ ^/ P* W; E
                Id++;9 ^3 a. v1 w9 i' a
        }1 g5 F# Z2 Q3 n, f  `2 H; v

9 C7 I- E" w  ?7 o/ ^2 r        public Activity activateIn(Swarm context) {
4 ^' s- v" G4 D6 m8 v                super.activateIn(context);
3 q% F+ s/ l& C! w2 r" C                schedule.activateIn(this);! b3 V/ e* ?9 I% k! S
                return getActivity();* k: r& @  q! o4 n2 }5 p4 p
        }0 ~: X, o- H/ p5 n  y0 F8 a

% C7 Z% i/ q" A; e; Z. v        public static void main(String[] args) {
/ T" s, r  h( F% M" l  q  J                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);: L  [! h8 k  ]" N" {& C6 x+ j
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
5 J- Y! a& S) u                swarms.buildObjects();7 }' \% G9 ]9 H' t/ ]; P
                swarms.buildActions();
: ~. H5 R4 m; i                swarms.activateIn(null).run();
5 e" I- Y) g& }        }
/ A8 a1 y. P; [# I* I
+ n( V+ U) l( m$ `/ m9 T}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-7-2 20:26 , Processed in 0.012912 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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