设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 6345|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 5 `  |) a3 G4 _. a1 O/ K
, F) x$ |  N7 n4 \) Z7 l8 c
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
( z. r+ d; A: b# r以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.4 _* i$ A% b# k& O% G2 Y
swarm.SignatureNotFoundException9 G0 S) f0 J- n* G9 k
        at swarm.Selector.<init>(Selector.java:76)  a8 c% o$ r  G. {3 p* ~* Q# X/ e
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)8 {; }5 k  L, m+ L5 S2 n
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
$ j( x0 n+ a6 ]: P! B
5 _2 K8 O7 N! s2 ^: U; O/ R; a9 Z5 ~9 @! M4 x
import swarm.objectbase.SwarmImpl;
$ N5 E9 k5 Z1 f+ zimport swarm.objectbase.Swarm;6 ]! N2 S- e7 D
import swarm.activity.ScheduleImpl;
+ ~5 m9 L7 g+ B- s0 himport swarm.activity.Activity;) h; G+ s: c% @
import swarm.activity.ActionGroupImpl;
4 V$ J7 l* H) i# k* j. Jimport swarm.collections.ListImpl;- j! ]7 b1 v7 X+ L/ k
import swarm.defobj.Zone; 7 {" H- s% p9 ~
import swarm.Globals;
" {( y, W+ m& fimport swarm.Selector;
3 Q  d5 `: I7 a, B, ]! N, ?import swarm.activity.ActionGroup; , M& R  D$ m% `: g) L. k
class Agent {
! ^! Y' u4 y: e4 p        char id;
0 U" o  `  c# V7 p1 e$ `9 [' O% A5 ]1 l% l; f# V
        Agent(char id) {
4 s- A8 M& v: }) x4 G                this.id = id;* P; D7 ?' T0 o: v& \' d
        }8 K- F. F  b8 k* s- [: p3 v) I; Q# {
+ m& M' v$ `/ x; j! j; y, {
        public void agentStep() {
0 @) o* K" ?% P% c                System.out.println(id + ":" + Globals.env.getCurrentTime());
1 o$ J' i5 J* b9 V- K$ ?8 v        }
8 a* i$ t* Z: C0 K7 Y}2 t% G  D* \) Q: d% x/ j. d: G

  L- m: Q) ]9 ]1 X3 _public class ActionGroupDemo extends SwarmImpl {! |% c$ ]8 u$ ^5 h( D  t
        ScheduleImpl schedule;7 W6 F6 b* c; W. j/ D! v
        ActionGroupImpl actionGroup;
* q4 k* A5 U/ m' {' c/ k1 i  N        ListImpl list;
3 m5 G+ j; n8 j" T: Y2 [        char Id = 'a';3 B% l% O% V1 c6 L; H
/ \8 ?2 T6 p5 [* z
        ActionGroupDemo(Zone aZone) {) j( J# J2 T5 T# ]& ]: D5 T
                super(aZone);
9 X- B$ W: @  g' k9 Y                list = new ListImpl(aZone);, Y1 R0 @: d2 a* d
                swarmSetp();% Z" y& {: E8 ^6 i
                actionGroup = new ActionGroupImpl(aZone);* v" f. u0 P# C3 O: `
                schedule = new ScheduleImpl(aZone);% C7 ]) C7 r- N) ~8 A9 `
                try {
' N# Z. g+ t7 X, M) @- y( V                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
+ S6 f) \9 [& U0 p4 U% W9 R                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行5 V; _7 U' B$ t3 p7 h
                        
+ V7 l  }8 c1 Z6 [5 `/ l" c* O$ q                        actionGroup.createActionForEach$message(list, agentSel);' \9 r- F3 c" n, x2 S
                        actionGroup.createActionTo$message(this, swarmSel);& q! L8 H: |: D: }" W0 V. T9 y% L
                        schedule.at$createAction(0, actionGroup);; g5 i4 g' b6 O0 a6 [/ H
                        schedule.at$createAction(1, actionGroup);- ~& C5 @7 p& h$ E: |& o! D# d* U
                        schedule.at$createAction(2, actionGroup);7 n  S+ o1 H3 d; h
! u3 Y, l* E* c- p4 F
                } catch (Exception e) {* R- B' j& Y7 L2 Z$ L, T' u
                        e.printStackTrace(System.err);3 a2 g# m, E( S. V5 @; T
                        //System.out.println(e);  f. [7 ^) X  s
                        System.exit(1);
- E6 |2 a1 e+ m  v. r& A                }! M$ X1 u9 b$ |6 H" u- H
) s+ ]6 G6 c4 [7 P2 Z

  f2 R% A+ E3 u5 p( `: ^        }6 G- j" u+ Z* n& N
. H2 o5 [5 R, M; N4 L
        private void swarmSetp() {
# r( k0 K# G7 N* N% D3 f1 \! V                list.addLast(new Agent(Id));; x7 m8 ~5 k, p1 n* X
                Id++;" n0 z0 v$ G" ]( v# s
        }: t2 ?7 N; o/ h5 D  o" H

& {5 J8 [' o5 {, C7 r0 Z* L        public Activity activateIn(Swarm context) {% j# V" R5 u; F9 |/ Q: ]9 d
                super.activateIn(context);5 s  g* F, o9 P9 W& B6 G
                schedule.activateIn(this);$ q+ j! o; J( \' C
                return getActivity();) m! r- m& q* _+ o2 \2 c6 K9 `) B
        }
5 A4 |; }8 R# Z* O8 t$ f% u1 b$ Z) ]  _+ j
        public static void main(String[] args) {
& M* j, w. A% ]7 L0 N( z2 t                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);, G  i" S- H: I: E* J$ I
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);5 I6 T& I4 L# \* ], G6 D! x' e
                swarms.buildObjects();/ q5 H8 T7 o7 t3 U* w) K
                swarms.buildActions();
7 R. R+ `1 J0 U# v/ W                swarms.activateIn(null).run();4 t! \: f8 h$ C& t
        }
9 f8 a( d! n% T+ H4 m$ J
1 L) p' N; w, |4 x}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-26 00:08 , Processed in 0.533128 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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