设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 12621|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
2 B1 {# _2 H) d8 ~# X* a
' W6 B+ f9 E- e3 U7 V6 c本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
) S/ Q* L4 A! q/ C( B' _以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
. U5 ?3 g- ^3 o" v; d' h7 F! Dswarm.SignatureNotFoundException
; T- T% U% R) J# y        at swarm.Selector.<init>(Selector.java:76)$ r. ~# }, n8 p  P3 L
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)# b' J. N/ F) w- }
        at ActionGroupDemo.main(ActionGroupDemo.java:67)% @- j+ S# w. R

2 r" M/ l8 w0 ^& X- U  b) U6 z0 k, F( D7 v& w
import swarm.objectbase.SwarmImpl;7 Y# Y: ~/ ^2 F  k9 ?" w/ |( s
import swarm.objectbase.Swarm;4 c/ E, `! [( v2 v! m
import swarm.activity.ScheduleImpl;3 F, b0 I' I4 }  `) y
import swarm.activity.Activity;
/ K3 C$ T! y/ k0 D5 T7 U8 Fimport swarm.activity.ActionGroupImpl;; v  j; z- y* i( p8 l
import swarm.collections.ListImpl;
) k9 a) K) V; Aimport swarm.defobj.Zone;
6 ~6 f# R4 h" L. d+ [# [import swarm.Globals;0 B' J+ g* F0 \- t, a+ U- z  w
import swarm.Selector;
$ M2 {% \; x$ R  ^import swarm.activity.ActionGroup; ' K! l9 q( {( l+ d+ {  x. l. Y
class Agent {
% k8 _7 k- |' P. C/ f( ~        char id;9 q8 |5 u! ^$ Z5 B+ p
5 R8 K8 ?# Q7 L# B* T+ x; ]1 U
        Agent(char id) {0 _- G: B& R$ d' K
                this.id = id;7 F; J6 }2 `8 j3 Y9 x
        }) o( K3 K# W! G! o, D0 x4 W7 t' s

+ |5 M4 }/ ~$ V- m; t        public void agentStep() {) A! O8 N' j$ r1 V7 g1 ^& O
                System.out.println(id + ":" + Globals.env.getCurrentTime());
4 t/ i0 S+ J5 I" B        }
: S3 ?4 {: q/ ^. l) m3 U( ^}# A' D, C9 ^8 ~

7 y6 Z' w1 s. q( G! _9 J8 Q5 Tpublic class ActionGroupDemo extends SwarmImpl {
2 H: F9 p! c+ h7 @3 \. p        ScheduleImpl schedule;
9 Z, \' _4 O' C% @        ActionGroupImpl actionGroup;: Y: N: b& V+ s+ N9 n0 `
        ListImpl list;0 ]8 o' D' Y3 O- S1 \
        char Id = 'a';/ O9 Q, z& C, ]# h
4 i+ \6 h" H  I& O! C- X& w( @
        ActionGroupDemo(Zone aZone) {& ^! n5 ~9 l: m* _% h
                super(aZone);
8 U9 t0 v- v- ]. Z7 t1 G+ E  b                list = new ListImpl(aZone);: D, i, i, l9 J" z
                swarmSetp();0 `2 q. x: v8 g1 w
                actionGroup = new ActionGroupImpl(aZone);
1 S0 Q$ G* m7 r                schedule = new ScheduleImpl(aZone);4 Q" v5 Z3 a& I; Y6 e$ |
                try {
( Q! K# G7 x7 I/ }' p7 l                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
4 w( c% e7 s; I  A0 U+ `& K                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行; ^" Y5 p; ~8 H4 |6 k
                        : Y( Z# l# G" z$ x
                        actionGroup.createActionForEach$message(list, agentSel);- G* I* K1 U3 v0 \& }
                        actionGroup.createActionTo$message(this, swarmSel);, F# E( }' _+ W8 t2 W9 S
                        schedule.at$createAction(0, actionGroup);
  ?! E9 X: z( N                        schedule.at$createAction(1, actionGroup);
! j2 T/ |; }/ v$ [( W                        schedule.at$createAction(2, actionGroup);4 H1 V) A" I9 u5 L. `
. ^- f1 v! ~  ~* n8 j# n- M
                } catch (Exception e) {
. c: W  n9 R" C5 H                        e.printStackTrace(System.err);; `8 w% p3 D% }* |
                        //System.out.println(e);$ r3 h7 @7 W' e( p- ~7 T
                        System.exit(1);; h1 d7 j2 ]$ f) i# k- a2 a
                }) {* ^3 X9 _* Y( Y$ q* U* A
5 ~- q/ Y( u; o
1 ^- m, D/ i8 d. d6 \
        }8 P6 U- d0 b& E- Y& v7 Y8 o8 w. o2 {

2 I& V3 B3 _- w; |' P1 x        private void swarmSetp() {
8 T5 w, ^$ \( \% A                list.addLast(new Agent(Id));
# [3 \& M) \+ w, v/ [                Id++;
! q1 m, L8 i! w' v0 y        }* l  w1 T* A+ I+ [

% ^8 u; |$ H1 a* c9 D$ T        public Activity activateIn(Swarm context) {( C  f: y7 a0 E, T; h. ]* c
                super.activateIn(context);- w+ Q; F' X+ |; Z3 ~% J% j
                schedule.activateIn(this);0 q: p4 j! t" \- n) G- \
                return getActivity();
8 j1 h! i$ A, A7 V; ?. \        }
# i- r' g5 g8 t' D7 F% F- W5 J8 u8 {$ g$ k
        public static void main(String[] args) {, ]3 n4 f3 J6 B0 q% a
                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);* I) a0 H7 t0 P% |
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
- o0 P+ s0 Q: |$ D3 T                swarms.buildObjects();
" v! T8 v4 M2 x1 e                swarms.buildActions();
0 o& ]8 I  w1 ~                swarms.activateIn(null).run();- y* Q; c$ e9 n+ n" o" ?
        }0 `7 _! i" F8 a, E4 a* X
" h  ]% x( G: i5 C
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-8-14 00:46 , Processed in 0.012410 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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