设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 7851|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
6 J+ Y7 s) l# [  N8 @; z7 N& H' |( k, W9 v! O) h# H
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
, B+ B1 c% S7 i以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.% L4 q! [- F% m( H: G+ [$ o  I
swarm.SignatureNotFoundException
6 H8 _( F% x' u) {3 Z" V        at swarm.Selector.<init>(Selector.java:76)9 |* R- c2 {3 |  x0 V! y: @
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)' o/ t' d4 |3 l7 g% [3 l( J
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
5 Z7 N' P* Q' }. i# @4 t
8 d8 t3 g& M' C$ F. {1 V7 ?- ~1 Y' |5 V5 [
import swarm.objectbase.SwarmImpl;
) i8 L  c2 I3 e' Zimport swarm.objectbase.Swarm;
) K) D; E' y( A( H; z' L4 himport swarm.activity.ScheduleImpl;
9 b- H7 a$ @2 a7 S' oimport swarm.activity.Activity;( R. E3 i; }2 |  v
import swarm.activity.ActionGroupImpl;
  N6 V: Q2 t4 U" |import swarm.collections.ListImpl;: j4 J- L2 I. x, C
import swarm.defobj.Zone; % n1 z  V4 S/ t6 n3 a' t6 Z
import swarm.Globals;
7 R) j8 a" B3 ^) v# \+ v0 Kimport swarm.Selector;9 J. p1 L+ j. i/ u6 L% e
import swarm.activity.ActionGroup; % S7 U/ A# f3 \2 g! N
class Agent {& e- t( M# o& ?
        char id;
+ W! I7 ?# \! G  G( W
: `; j! B, E7 w- }, v        Agent(char id) {' i. Z$ }( Z% n7 T$ o6 }
                this.id = id;
7 N5 u6 h6 r) q( @) Q! ], o+ [5 E: l        }4 e! t7 [/ j7 N5 v' e  C

6 h( l1 Q/ Z) w2 N7 v        public void agentStep() {
: |5 B- j3 W1 B3 J8 h  `2 i& r                System.out.println(id + ":" + Globals.env.getCurrentTime());
+ X% |! }( q5 j' o! ~        }, |& Q' U- S  T7 j6 p$ @
}
* E5 L2 N+ x, Y+ b) d2 k6 H' M. B! ?$ R+ H6 D% I- S6 R* F  P8 B/ M: d/ I
public class ActionGroupDemo extends SwarmImpl {
( s/ y' i# @5 C1 ?% P+ |& U        ScheduleImpl schedule;
% ^5 h0 ~- T' H4 j2 f  `0 z        ActionGroupImpl actionGroup;
  M  x+ Q: x2 r8 X# T& e5 V% {5 j' d- d        ListImpl list;
" i! g# m0 w; g6 t        char Id = 'a';
4 A2 N7 S8 V4 v( p6 @. `& u+ q/ j& B4 I( k
        ActionGroupDemo(Zone aZone) {, h: U0 h1 o" V) L6 l- K3 E$ `! D
                super(aZone);7 r3 ^% L0 d$ a4 ?
                list = new ListImpl(aZone);  V& w! O3 q2 M6 t, B7 _
                swarmSetp();- t; U# o: q  G; o
                actionGroup = new ActionGroupImpl(aZone);* m5 H' S- n2 v. t
                schedule = new ScheduleImpl(aZone);
" f4 L- k/ [1 L9 S                try {
$ @- N7 M2 n* D                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
7 A7 m0 @) A8 d                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
" Q5 |3 J. }8 {6 b4 [                        5 i6 b) u' g$ X3 j1 f7 A
                        actionGroup.createActionForEach$message(list, agentSel);
' m' `7 H) f) {& H  U2 N                        actionGroup.createActionTo$message(this, swarmSel);
, @3 [7 O8 B9 U' |                        schedule.at$createAction(0, actionGroup);- B! @% z8 ?$ M
                        schedule.at$createAction(1, actionGroup);6 P, h+ U4 K& w5 M; `0 [
                        schedule.at$createAction(2, actionGroup);
# o% X! T; @9 T$ w4 D- W+ d3 ]  @0 m- ?  P9 Z2 K8 X0 v* r
                } catch (Exception e) {
% I4 o$ D( ^# l: G7 u                        e.printStackTrace(System.err);; u0 Y% \1 S. w  m6 G
                        //System.out.println(e);
6 d$ z, N: m2 d+ P1 Z                        System.exit(1);
' L. l1 _' K/ y' e: a8 x  V) `6 c$ e                }# r) W9 g( w; Q" l# b
- v! c6 d) G. [5 O  a

& f( E8 G5 o/ B$ @) |( G1 m- H* O* D        }
8 W  Z' X0 p3 R  r6 Y
2 Y: n) t4 p# h4 k( p3 n        private void swarmSetp() {
" o0 u, \3 o1 l" q* U) L, ~                list.addLast(new Agent(Id));. g+ E1 R, n' V0 t( F7 q. H0 p+ r: e
                Id++;0 e! i/ s9 R  r; o$ O5 W" j
        }0 C& t2 Z5 t, G$ C% r

4 ^0 |: r5 R/ j  U0 N1 m# h        public Activity activateIn(Swarm context) {
& C# b% i3 [- D- h                super.activateIn(context);- Z4 R. W$ t& w
                schedule.activateIn(this);5 L8 g, N" X' a5 t) g* q3 T
                return getActivity();
4 D3 j' r4 @1 |        }
/ D8 i7 u! d0 ?" Z, H& _$ m* {% `. i" d# k8 x# Z2 i1 s
        public static void main(String[] args) {
: M0 U; b' \  b, W                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);2 X2 h: a2 R" Z" E2 o
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
% _( v' }! [, t# s# ?* q                swarms.buildObjects();
, _, |* f/ I( d: Y                swarms.buildActions();) Y: s1 \2 O4 T% V" Z
                swarms.activateIn(null).run();- H4 ]7 t4 p6 v
        }# g* y! c, e* c5 E
  N) Y$ E, o/ H' v3 w% m
}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-3-17 19:51 , Processed in 0.018463 second(s), 15 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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