设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 9931|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑
( A) o8 M" ?4 a: A* ?7 _, J. Y+ n) V9 u) F% }* N6 }- @% b$ h
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21$ k1 c* F. f0 n1 P" w" g
以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.2 Y- w) L8 A$ _/ ^
swarm.SignatureNotFoundException7 h+ P' K0 {0 a3 N( I
        at swarm.Selector.<init>(Selector.java:76), Q. B8 U, `- M5 _
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37)
# I9 H+ N/ [- W0 z7 U- i        at ActionGroupDemo.main(ActionGroupDemo.java:67)
9 e; C4 Q4 V/ a" N2 S6 T# Q/ z2 N( b/ B( d+ f! Y( o/ b( ^
' T  \2 g* y# L' E7 t* E4 s/ d
import swarm.objectbase.SwarmImpl;
1 z: F% @1 c* u& o' P2 Uimport swarm.objectbase.Swarm;" E, D6 `3 F9 s8 C  }' L- m& J
import swarm.activity.ScheduleImpl;, K& s2 }1 l) ~4 n
import swarm.activity.Activity;
1 |0 r/ ]: R) |9 T/ x7 Nimport swarm.activity.ActionGroupImpl;
% M8 P$ o, `7 W0 N3 P( G) e& r9 ]import swarm.collections.ListImpl;8 |2 f, ^% p$ E' t  V
import swarm.defobj.Zone; # G" D  @" V) l
import swarm.Globals;
& [' G+ r6 D3 f! ]) g  E7 r7 }% Rimport swarm.Selector;
/ o" ]2 k# @. h# u6 E" ?import swarm.activity.ActionGroup; ( V4 I6 m, ~# h, l" u9 {
class Agent {
* K, t* N* X- S8 H5 u4 E9 V        char id;
; N# C, z8 F7 z  b- L
  n. _$ t' D" P& n        Agent(char id) {
- C+ e' a9 O% X' Z6 S( n                this.id = id;
: l! x" ~# j6 d8 {1 c% ]+ F9 |        }
/ L. X* B! [- D$ O# X
) o8 n$ }, t6 |5 z6 O        public void agentStep() {1 d6 B3 J, W, ^+ T/ r( }$ J
                System.out.println(id + ":" + Globals.env.getCurrentTime());, X; D2 \' u% {. G" c3 G0 Y
        }( @5 Y) A0 ~7 g2 G) b7 E
}* }  a  b- y3 B+ Q: s

# q. r3 R6 K) m6 {public class ActionGroupDemo extends SwarmImpl {
; W0 k# o! B9 b6 x        ScheduleImpl schedule;* ]! L( |+ e) f8 d
        ActionGroupImpl actionGroup;
% x7 L$ K+ v  Q        ListImpl list;
! a2 {, m, `3 z$ O- |        char Id = 'a';
2 [) }/ ~0 d9 S' ~& p5 \: T
: P+ G" A* J7 l+ V        ActionGroupDemo(Zone aZone) {  S; a* d+ A/ T( a
                super(aZone);
6 b4 V# F; e. _; s& T                list = new ListImpl(aZone);9 E5 q( \0 j' l: R: T
                swarmSetp();
) g, h! @* X1 l3 C8 C                actionGroup = new ActionGroupImpl(aZone);
( W  m/ w  K( D4 f5 s% O/ r! F3 N                schedule = new ScheduleImpl(aZone);6 F7 C+ f0 m; d6 {/ T8 ~
                try {8 u% t; v4 y1 k- D, e! Z  c
                        Selector agentSel = new Selector(Agent.class, "agentStep", false);
# A! F4 H: f- x                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
; m# k8 |3 K) V: D! |                        
- `" E6 O' J2 i6 v                        actionGroup.createActionForEach$message(list, agentSel);7 j  _; C& i1 f' W8 G
                        actionGroup.createActionTo$message(this, swarmSel);
6 ~4 E, Z4 x8 ]  P4 i                        schedule.at$createAction(0, actionGroup);# L6 d0 T* L+ B. a& P& @5 z
                        schedule.at$createAction(1, actionGroup);- y; ~" r' U. d- D+ ^: f
                        schedule.at$createAction(2, actionGroup);
  P- ^+ q/ \" L7 H% b* `0 z! S7 m! t( e
                } catch (Exception e) {
& L1 [4 H% |7 G4 Y4 v( Y$ b                        e.printStackTrace(System.err);% k4 h' m# q. d3 P  T0 r; A4 M5 B
                        //System.out.println(e);
/ u9 w0 C. q: H* E( I) B                        System.exit(1);
1 f" k" E9 E# H( Y  C- w                }
4 H- ?2 g& D$ d' Z! V. P/ \6 z" R, F$ N- Y  ]: M/ z1 u
/ V4 v  t# z. M/ f
        }  P9 E. X) i- m( i
; }9 V+ p  M/ [& a8 X
        private void swarmSetp() {
: b. Q! c/ q4 h; Z7 b- L                list.addLast(new Agent(Id));
9 a7 ^+ n3 m4 I4 o. T                Id++;
! @5 h; T4 a1 }( ?6 f* S        }" e, X9 o3 x8 W& O

* j$ g# Z' s9 _( U        public Activity activateIn(Swarm context) {
. V0 H9 g5 y+ Y* J                super.activateIn(context);6 h5 Q3 y1 j/ a3 t- ^& @, F" H
                schedule.activateIn(this);
8 s9 m# Q9 ~" C* a/ K                return getActivity();
: W  c  p5 k( {4 r( g% p/ M        }
7 ?% X* _% H2 q* o; j+ C
' ^  ^; X& M$ V, ~) a        public static void main(String[] args) {
- y) |0 G) r, W' U                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);
& H' @/ s& A  F2 }) {" l" O                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
8 Q  u/ D$ g: X7 K' u5 s/ J" k3 o& {                swarms.buildObjects();
. Z: x/ |- Q2 q3 a; l7 B* [                swarms.buildActions();! z8 ^. i1 h0 p) p1 w0 |4 I% l& |
                swarms.activateIn(null).run();
7 q- z$ @, f, a4 s0 v1 O  T5 h# {        }
2 e9 G) n" S" ], E
7 Z, q6 I1 I4 o. p}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-5-28 03:37 , Processed in 0.018096 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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