设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 8147|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 9 p" i! [4 e8 o

$ x, d- t% u9 I% [! d& l本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21% l3 ], M" ~5 w6 i1 O5 e  i
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.
& e& C1 o& p" G) v7 X  `. wswarm.SignatureNotFoundException% p' A9 d  |3 c# V5 T. r7 v
        at swarm.Selector.<init>(Selector.java:76)
; |' l  J2 X) Q- s5 N% H' d        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
- U. g' h0 |$ ~1 H9 Y  B1 F3 M        at ActionGroupDemo.main(ActionGroupDemo.java:67)
6 S% D/ s& _2 x4 h1 F& D& C9 S
5 I$ }! S. A- I% A
import swarm.objectbase.SwarmImpl;
9 _- W; u0 f& h3 Mimport swarm.objectbase.Swarm;
! o. j& Q; X. Rimport swarm.activity.ScheduleImpl;, o. F4 Z* ^! T: w5 z
import swarm.activity.Activity;
- t% U. a+ P" ?: e$ {. Simport swarm.activity.ActionGroupImpl;& g2 H' U/ [1 f7 u
import swarm.collections.ListImpl;
1 ~7 u8 ^/ F2 b/ Himport swarm.defobj.Zone;
+ j& `& N2 b; L3 u2 t6 d! q0 w; wimport swarm.Globals;
( ^0 d6 r$ t( q/ fimport swarm.Selector;
( o3 r+ M( r/ limport swarm.activity.ActionGroup;
$ o: q: A$ B2 Yclass Agent {) Y4 d6 t: N6 @$ z, k* @
        char id;
9 r+ X/ l  q/ ]4 p' `3 o& v
0 o# g2 z, W' w/ |5 j1 }# r0 }        Agent(char id) {7 t$ n0 c, c8 E6 i
                this.id = id;
+ D$ H+ d( }) v8 A( K0 H% s        }& J! d) Z$ e* y8 Y* o
3 ^8 y) U! {" G+ [
        public void agentStep() {1 h* L8 @4 m3 B) F
                System.out.println(id + ":" + Globals.env.getCurrentTime());) I# U& R) u+ X( f. q
        }$ u4 H3 g0 s; j+ M/ i) G( N0 k
}0 O3 n& \  e5 x
1 x3 ]" v2 W! U
public class ActionGroupDemo extends SwarmImpl {
! G# x3 H: u2 Q8 |        ScheduleImpl schedule;) Y- @% Y: t2 g% ]5 Z
        ActionGroupImpl actionGroup;
/ [' c7 L  t7 U        ListImpl list;( I9 N2 n% M$ g1 k! V' _
        char Id = 'a';
6 V) y: s- Y5 p/ N
4 d, q# B7 g% l+ s0 h. ~        ActionGroupDemo(Zone aZone) {
% D# r- i1 k' A% u6 J                super(aZone);
- _$ @/ |( Q9 ~* w* m                list = new ListImpl(aZone);5 g: ?" T& ]6 b0 w5 R
                swarmSetp();
4 L9 P3 r* `6 y, I% t3 Y/ l                actionGroup = new ActionGroupImpl(aZone);
& @% {! d9 `. d# ^                schedule = new ScheduleImpl(aZone);
. [+ a1 r# a8 Z# M# _% W) ]( ^                try {
4 X2 y7 Z" P+ j) L5 Q) F                        Selector agentSel = new Selector(Agent.class, "agentStep", false);+ l4 a8 s2 k2 U8 }1 B* S
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
! \+ ]. t' H3 m) s( I, R4 }                        5 }+ U) n7 n. P
                        actionGroup.createActionForEach$message(list, agentSel);
! P4 _! P  X/ ^- W: m0 t- ~; F                        actionGroup.createActionTo$message(this, swarmSel);3 U, P) y; |1 J0 \$ T' V( C$ Y
                        schedule.at$createAction(0, actionGroup);
' g7 M( e* f7 ^" L0 m                        schedule.at$createAction(1, actionGroup);
% g8 J2 O! Q8 I8 F                        schedule.at$createAction(2, actionGroup);7 n# Y; J" I; i7 O+ }

! e5 K4 `8 U* Z% E* V# ~' }                } catch (Exception e) {: Y; r& P8 i1 ?  V: F
                        e.printStackTrace(System.err);8 V, ~8 k1 C1 C' v% ~( `
                        //System.out.println(e);
2 z: s+ n# w& F3 E                        System.exit(1);5 Y& x/ X2 Y" ~; \- k8 D
                }
; l0 W7 I" I) ?/ m
3 c% L4 e- H) D2 ^0 X" E
" o: H! n3 A3 @        }
! d) A) h$ r5 W4 ], r" _; {/ s. b3 v( [* D3 J  ]6 f
        private void swarmSetp() {
1 D  q- \. f2 U. p* t                list.addLast(new Agent(Id));0 e3 [4 ~: {8 [/ \' w, h# @& E
                Id++;
* L. ?/ |' I/ c9 |        }
! l/ l3 ?+ `/ c; H; r
% [: ^0 t. f3 [' p. w" h- v        public Activity activateIn(Swarm context) {
% r' d/ H+ P/ W" G" ~                super.activateIn(context);
5 v3 c3 b. M) d# Z- R' ]) k/ j/ k                schedule.activateIn(this);0 M) ?$ F$ _0 d2 ~
                return getActivity();7 C1 y6 w0 Y+ _) x" s( A+ e
        }
4 x5 b8 P+ _6 U  }2 X- [1 k. ]; r. d. s3 f) k7 ?3 x8 y- L
        public static void main(String[] args) {
! J  H' B9 E6 g, U  U( Q                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);. [7 |7 Y! M, i. ]. ?$ n& T* p; B
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
" D% |1 Y9 p/ i8 _6 s% [                swarms.buildObjects();( Q+ [) I3 i3 S/ I& s1 S
                swarms.buildActions();
9 K% K1 Q5 E( h4 _" A                swarms.activateIn(null).run();/ y6 c$ u5 J% A8 z3 W3 O- U$ u
        }, _4 M: z: ?  ^6 f

0 R- Z4 E4 L  Y8 f3 ?/ u. n9 O* Y}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-4-1 01:01 , Processed in 0.019542 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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