设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 13949|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
" N/ z; I4 ?3 {  e) V& H. @
' x3 h8 }, _3 c2 ]; J本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21" o) P8 L: a* G' X3 b
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激./ ^/ z) ~; O/ S  ]/ y
swarm.SignatureNotFoundException
/ |: E" ^. F, ]. P+ T        at swarm.Selector.<init>(Selector.java:76)' m4 ?/ j4 C5 Z: q0 Z' d" @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
/ N  ~1 Q9 y1 Z- Z* p        at ActionGroupDemo.main(ActionGroupDemo.java:67)( v7 a) R/ \* i& c6 b

* C4 S( l4 M& @# v# J" q8 E. d, |/ J
import swarm.objectbase.SwarmImpl;1 U" M: Y7 j( P) ]& e5 _! _
import swarm.objectbase.Swarm;
4 O$ d. Y- z: q& e& E; N, limport swarm.activity.ScheduleImpl;
, p! [: q& |5 R' W! B0 t  O+ Fimport swarm.activity.Activity;
4 B; T& I) l0 B) u; Ximport swarm.activity.ActionGroupImpl;
% r4 a: M  W2 h" b$ E- j' A; Wimport swarm.collections.ListImpl;; X- I5 I" W' W% z
import swarm.defobj.Zone; . n$ ]. U. f& ]* S
import swarm.Globals;# V6 s) B! i& o9 Q' u% r* s, }
import swarm.Selector;' L6 @8 p" r; Y  @
import swarm.activity.ActionGroup; . L* h' ~/ J) C& G
class Agent {1 t5 f: g7 [) z1 s
        char id;
- I9 ]6 |8 E- s; A4 X% q0 s
! n1 N( a) I" }9 f& G/ m* P        Agent(char id) {/ C  o9 t6 n9 l
                this.id = id;; {3 ^1 c" q4 m4 f9 e
        }5 M, m( l8 @/ H9 k0 |
1 s" X5 G5 e0 l! R1 c6 v( j8 w5 J& `9 x: t
        public void agentStep() {. |- X/ u- H9 a
                System.out.println(id + ":" + Globals.env.getCurrentTime());
2 x2 g7 ]& l& }2 f        }8 D7 J8 m" ^2 Z  {5 v+ a2 p! s
}) l% k2 b4 O8 a9 r1 ^
8 Q6 E' m- m8 A
public class ActionGroupDemo extends SwarmImpl {
- f* {. b8 d" G9 z        ScheduleImpl schedule;9 Y& G/ j" |" b8 n1 \" e
        ActionGroupImpl actionGroup;
/ O# F( p' f' n4 O' w        ListImpl list;
+ f1 P" f0 ~8 c0 [. m        char Id = 'a';$ c! v7 B/ [3 K! E
6 w, q4 F/ v+ T4 B
        ActionGroupDemo(Zone aZone) {% i; c: O3 ~3 A% W( \- E
                super(aZone);
1 O8 [# K4 c" ]$ u                list = new ListImpl(aZone);
6 f& H- m& G0 ]3 ~                swarmSetp();
+ l, V8 P6 u& b1 |  F                actionGroup = new ActionGroupImpl(aZone);3 T4 a3 G2 c* o$ b; `- d
                schedule = new ScheduleImpl(aZone);
" X# M+ A2 ~& s. u+ @) A+ s* x                try {! d. ~8 b7 |  i6 K: w0 Z; J
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
& q9 }( }, Y2 f* s+ ]5 s, N$ S                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
/ V# H" ]( l& e  L) X8 X: r                        3 @2 j1 f$ n, ^) |# E; U8 I( r6 F
                        actionGroup.createActionForEach$message(list, agentSel);3 f5 P$ H9 \, w8 `9 k! F6 B3 J
                        actionGroup.createActionTo$message(this, swarmSel);- }2 Y/ ]* q$ P) j
                        schedule.at$createAction(0, actionGroup);
. b6 }; F4 K! L  G0 n( P9 i8 ~                        schedule.at$createAction(1, actionGroup);
, F( {8 Q( ^5 q% ]+ F3 y                        schedule.at$createAction(2, actionGroup);
4 G, @9 N4 }5 X% \  T' c6 \4 h7 `3 s. D+ f* F: b% _% v8 \
                } catch (Exception e) {1 J9 g# m9 b1 K+ B5 m8 O. m
                        e.printStackTrace(System.err);# ~4 O; b9 [. }
                        //System.out.println(e);
  E$ }0 j' ~3 J8 X                        System.exit(1);* C- o5 b" Z1 w5 j7 N, f; c
                }( c# o. c& w5 L% }4 f
# a  O7 p# Z7 S4 V& A6 ~# u7 A
: L  X( K2 c# D/ m+ a
        }/ \% m- z: S1 `2 @8 N6 ?! r
. O) t3 E, R, s2 j5 {$ q, |
        private void swarmSetp() {
" r; P4 b% k# E% T( Y& L7 B9 F                list.addLast(new Agent(Id));* h4 A' q5 B, k0 n# {$ o
                Id++;, P, v7 f' g6 E2 x" y, A  W
        }* D5 C1 r6 t) V6 f

4 E9 Z; C; a0 `& ^) p        public Activity activateIn(Swarm context) {
8 I4 `' x* d, [: ?& s3 C; H                super.activateIn(context);
+ E  X& \8 n7 n0 w0 L, l+ C% ~                schedule.activateIn(this);
: ]' }. P" L/ @$ T# f" x; `                return getActivity();
$ [3 y" l% Q* F        }
/ M6 G* f1 [8 z$ I9 @( e# i  H% Q6 ?( [' r& S$ S
        public static void main(String[] args) {4 O4 W6 a. }- f$ S" ?& W& |
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);% Q+ ^6 X, x2 W) L6 S% a
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
1 t# E# A1 ]' |( D# w4 Y                swarms.buildObjects();
2 X6 a% R) b. P  ^                swarms.buildActions();. y4 C% L! H" R8 k; b
                swarms.activateIn(null).run();7 }" ^4 o4 ^9 A7 }  g3 x: p
        }
- A1 Z/ }. p8 m5 ]/ J9 V# J# U8 r! w, t8 j
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-9-22 16:12 , Processed in 0.016816 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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