设为首页收藏本站

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

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5021|回复: 1

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

  [复制链接]
发表于 2010-11-11 10:28:14 | 显示全部楼层 |阅读模式
本帖最后由 generate2000 于 2010-11-11 10:46 编辑 ! U; p$ U! Z+ @8 p$ D
/ o( X* w4 B3 S3 G) t; g" x5 ?' P% \; V
本人swarm菜鸟,有个问题请教下下.swarm2.2,jdk1.6update21
# }$ Z! A$ q5 w以下是actiongroupdemo程序,在执行时出现以下错误.请各位高手帮忙解决一下,不胜感激.9 ~7 ?+ S/ r" K9 `7 s
swarm.SignatureNotFoundException
- J& ?: d& |! D: y' r$ m        at swarm.Selector.<init>(Selector.java:76)  y" g6 ?. ]. E* ~2 R
        at ActionGroupDemo.<init>(ActionGroupDemo.java:37). A9 U" E, d2 d! `9 y
        at ActionGroupDemo.main(ActionGroupDemo.java:67)
3 P# Z( D4 ?! |9 m1 a. y4 D9 m2 y- P; T! o
3 w' [  a& N) Q3 J& d
import swarm.objectbase.SwarmImpl;
: T0 J7 l/ i$ R2 e2 Jimport swarm.objectbase.Swarm;
6 N0 ?4 g4 B' m& pimport swarm.activity.ScheduleImpl;
  S* n0 m( C1 Z0 S7 oimport swarm.activity.Activity;8 y" t, i& i0 E& l, S) Z/ @
import swarm.activity.ActionGroupImpl;
: k6 {$ f( u4 Y8 \% c) vimport swarm.collections.ListImpl;# u5 C0 l$ j) O. \* A- D
import swarm.defobj.Zone;
, Z; |# ?) m! e  W4 Yimport swarm.Globals;" H4 O; F, W: W
import swarm.Selector;6 Z& Q  c' S; z% E1 e
import swarm.activity.ActionGroup; + W2 J+ h0 q+ ^7 H3 O, E9 g7 X& A
class Agent {( j9 U( C* A# a( b( A% ~: c4 [8 ^0 E
        char id;
3 u/ K6 R+ |0 g& ^- W# Y( t: i7 N7 S
        Agent(char id) {! o/ }2 ?/ w  P! I( {0 m
                this.id = id;, S# K% P5 V6 o  N
        }/ Q4 d1 z8 p7 g, H# S

2 H: c& M1 U9 A        public void agentStep() {' v2 `6 Q' F% b# J+ g- F
                System.out.println(id + ":" + Globals.env.getCurrentTime());  Y' m; A1 Y  y8 `
        }" p3 ]6 I$ h& o' g% {3 q+ Q: u
}4 q2 E) Q9 g4 l3 K) X9 h" W2 j

  m0 U% P0 }; l0 p8 O: I* A; vpublic class ActionGroupDemo extends SwarmImpl {
. B) y, [$ c0 H  u  m        ScheduleImpl schedule;( h6 [" Q" a2 k* a# ~9 \$ ?1 J) \
        ActionGroupImpl actionGroup;
0 b8 Z0 Z' d- @: g8 d* W: h        ListImpl list;$ `6 L8 _- @, j& i/ ?9 |
        char Id = 'a';
: Q5 c9 r7 r$ g* T
# y3 @* z2 M$ g+ H        ActionGroupDemo(Zone aZone) {
* W5 m3 o$ [- Z$ m' W                super(aZone);
$ P5 U" Y9 V/ `- k3 |8 @+ R! u0 a* a                list = new ListImpl(aZone);
+ ^+ ]  ]. }$ t. r+ z                swarmSetp();
1 V! }  w, ~6 h" l                actionGroup = new ActionGroupImpl(aZone);
0 Q$ B( A5 @8 O1 d. R                schedule = new ScheduleImpl(aZone);
6 S  v/ N( V# x" o6 E                try {
8 X3 H( L0 B9 ^) @# _/ p* G$ {                        Selector agentSel = new Selector(Agent.class, "agentStep", false);; f1 [. c$ f3 I, R( p' ~
                        Selector swarmSel = new Selector(ActionGroupDemo.class,"swarmSetp", false);//问题就出现在这一行
- \0 W. ]0 V& Y2 @6 K5 y: _                        
$ x7 `& p, J# p" _! }/ @                        actionGroup.createActionForEach$message(list, agentSel);: w' ]( @7 ?9 a$ u, o9 b: t9 p6 s
                        actionGroup.createActionTo$message(this, swarmSel);
1 A) Y9 x  N- n  F. E5 B                        schedule.at$createAction(0, actionGroup);, n6 b9 F$ E; k, k# b- }* U$ k
                        schedule.at$createAction(1, actionGroup);) M3 x" m) x8 n: T5 O6 ^1 T$ \
                        schedule.at$createAction(2, actionGroup);3 `1 h- o" ^6 ^0 }5 i" b
& f8 e! G8 B" b% Y9 s. g
                } catch (Exception e) {: ^- u% j6 d& y* S  L* l3 k6 g2 d
                        e.printStackTrace(System.err);- u$ ]1 I+ \; P2 g5 L6 E  [  S+ b5 J
                        //System.out.println(e);
' f& t/ h/ \- c" Z" [+ w                        System.exit(1);( a( r0 @# m+ v& |$ Z+ Q' f+ p2 P
                }
1 D) f3 F% n: r( w
- D, x6 `7 K# D! Q! _6 H7 |6 _( E9 l1 X4 Y$ }
        }
# V3 q! K) x, I# y8 P8 s1 K- Z$ k! X) R/ Q+ \- k
        private void swarmSetp() {2 k7 n* \$ i* k0 H9 Q/ u
                list.addLast(new Agent(Id));
5 V  h' @, m" `$ \                Id++;
& F" T9 W: K2 q5 V8 w( h; q        }0 Q2 U- X! n, L8 n; u

) k6 x2 e" {7 l        public Activity activateIn(Swarm context) {
7 A2 k( i; ~; q+ h" h( Y5 R                super.activateIn(context);
- z$ X# Z4 r8 h. D) p4 ^                schedule.activateIn(this);. Y5 R0 S1 t" n, r& o. \
                return getActivity();
- f: G2 @. }6 ~& i% G# t7 Z+ ]+ ]        }
2 X) x+ L  |# T( z' K! B3 P% N( q' ^3 f$ o% |; l
        public static void main(String[] args) {
: T, Q" @$ S" |5 g1 R$ \9 L- Z                Globals.env.initSwarm("ActionGroupdemo", "1.1", "s@s", args);# b/ J5 T% D9 O; P
                Swarm swarms = new ActionGroupDemo(Globals.env.globalZone);
+ V9 z& r1 I  r. g9 ]' W$ \' v                swarms.buildObjects();2 U6 W7 i, V/ ~, X" K' A
                swarms.buildActions();" [1 Y% j$ l: d6 C& k& e
                swarms.activateIn(null).run();
: v. N  @8 \! l$ h2 K, ]        }7 z. ]( d  ]& U# o

' a9 `5 v0 M( g/ ]( K. X) R}
发表于 2010-11-22 22:09:23 | 显示全部楼层
你的函数swarmStep 不能为private 要是public才行。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-22 03:49 , Processed in 0.016241 second(s), 14 queries .

Powered by Discuz! X3.4 Licensed

© 2001-2017 Comsenz Inc.

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